diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 6747103f409f..c545e3b3fbe0 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,8 +1,8 @@ -This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process. +This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process. ### PR information - [ ] The title of the PR is clear and informative. -- [ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, [see this page](https://github.com/Azure/azure-powershell/blob/dev/documentation/cleaning-up-commits.md). +- [ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, [see this page](https://github.com/Azure/azure-powershell/blob/master/documentation/development-docs/cleaning-up-commits.md). - [ ] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch. - [ ] If applicable, the PR references the bug/issue that it fixes. - [ ] Swagger files are correctly named (e.g. the `api-version` in the path should match the `api-version` in the spec). @@ -11,5 +11,5 @@ This checklist is used to make sure that common issues in a pull request are add - [ ] I have read the [contribution guidelines](https://github.com/Azure/azure-rest-api-specs/blob/master/.github/CONTRIBUTING.md). - [ ] My spec meets the review criteria: - [ ] The spec conforms to the [Swagger 2.0 specification](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md). - - [ ] The spec follows the guidelines described in the [Swagger checklist](../documentation/swagger-checklist.md) document. - - [ ] [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 spec follows the guidelines described in the [Swagger checklist](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-checklist.md) document. + - [ ] [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. diff --git a/.travis.yml b/.travis.yml index cab5e67c64bd..221aefd23a6b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,6 +5,7 @@ services: - docker env: matrix: + - MODE=branchStrategy - MODE=syntax - MODE=python - MODE=node @@ -30,6 +31,7 @@ matrix: - env: MODE=azurebot PR_ONLY=true - env: MODE=liveValidation PR_ONLY=true - env: MODE=java + - env: MODE=ruby - env: MODE=go - env: MODE=node before_install: @@ -66,6 +68,11 @@ script: if [[ $MODE == 'java' ]]; then $DOCKER_CMD Azure/azure-libraries-for-java -v fi + - >- + if [[ $MODE == 'branchStrategy' ]]; then + # Check to ensure CI is not executing for a PR against the master branch in the private repository + ! [[ $TRAVIS_PULL_REQUEST != 'false' && $TRAVIS_REPO_SLUG == 'Azure/azure-rest-api-specs-pr' && $TRAVIS_BRANCH == 'master' ]] + fi - >- if [[ $MODE == 'syntax' ]]; then npm test -- test/syntax.js diff --git a/CODEOWNERS b/CODEOWNERS new file mode 100644 index 000000000000..b0a07ee68590 --- /dev/null +++ b/CODEOWNERS @@ -0,0 +1,101 @@ +/specification/advisor/ @daschult @davidwa-msft @kejiun @prasanna-padmanabhan @vladbarosan @xiaoyu-huang +/specification/analysisservices/ @athipp @daschult @erickson-doug @michael-falk @shihying @taiwu @vladbarosan @ziyuanms +/specification/apimanagement/ @darrelmiller @daschult @dmakwana @himanshumisra1 @jihochang @kedarjoshi @lukaszstem @maboja-msft @owolabi2 @promoisha @sethmanheim @solankisamir @vitaliykurokhtin @vladbarosan +/specification/appinsights/ @d3r3kk @frankguodongchen @vladbarosan +/specification/applicationinsights/ @alexeldeib @d3r3kk @daschult @frankguodongchen @jpiyali @owolabi2 @tiffanyachen @yanivid3 +/specification/asazure/ @athipp @erickson-doug +/specification/authorization/ @darshanhs90 @daschult @stankovski @tfitzmac @vivsriaus +/specification/automation/ @anatolib @bmanikm @chandrasekarsrinivasan @d1v38om83r @daschult @developertommy @francisco-gamino @kunyuchen @miaromero @mikekinsman @murilogr @najams @tiffanyachen @vivlingaiah @vladbarosan @vrdmr +/specification/azsadmin/ @daschult @deathly809 +/specification/azurestack/ @deathly809 +/specification/azurestackadmin/ @deathly809 +/specification/batch/ @brnleehng @chandrasekarsrinivasan @daschult @jihochang @kiwidev @matthchr @murilogr @tfitzmac @vladbarosan @xingwu1 +/specification/batchai/ @alexanderyukhanov @daschult @jihochang +/specification/billing/ @daschult @panda-wang @shawns1 @tiffanyachen @vladbarosan @wilcobmsft +/specification/cdn/ @camsoper @csmengwan @daschult @erickson-doug @injyzarif @prakharsharma10 @shawns1 @stankovski @vladbarosan +/specification/cognitiveservices/ @areddish @ashku-ms @chandrasekarsrinivasan @daniel-ms @daschult @davidlicig @eisber @felixwa @gmainar @jihochang @lebronj @luiscabrer @murilogr @omarelhariry137 @pcostantini @q3blend @ro-joowan @shakao @stefanvalianu @sudhansu88 @tiffanyachen @v-sodsou @vladbarosan @xiaojinghe +/specification/commerce/ @brjohnstmsft @bryanla @daschult @pargall @vladbarosan +/specification/common-types/ @vladbarosan +/specification/compute/ @bganapa @brendandburns @brjohnstmsft @carissasun @chandrasekarsrinivasan @daschult @deepakrajendranmsft @dlepow @dmakwana @evgenyagafonchikov @gatneil @gbowerman @himanshumisra1 @huangpf @hyonholee @koralski @lukaszstem @maboja-msft @mboersma @murilogr @nepomuceno @nkuchta @pratnala @priydes @sethmanheim @shawns1 @stankovski @sudhansu88 @tbombach @thraka @tiffanyachen @vinatara @vladbarosan @wangjun198389 @waynekuo @yolo3301 +/specification/consumption/ @daschult @kc786 @kjeur @ms-premp @panda-wang @sandeepnl @v-anpasi @vladbarosan +/specification/containerinstance/ @daschult @francisco-gamino @jluk @samkreter @xizhamsft @yolo3301 +/specification/containerregistry/ @daschult @djyou @jihochang @mmacy @ro-joowan @vladbarosan +/specification/containerservices/ @daschult @mboersma @vladbarosan +/specification/cosmos-db/ @daschult @dmakwana @molly-moen @vladbarosan +/specification/customer-insights/ @daschult @tjlvtao @vladbarosan +/specification/databricks/ @jeffpang +/specification/datacatalog/ @daschult @maxlims +/specification/datafactory/ @bgold09 @chandrasekarsrinivasan @chinadragon0515 @daschult @eva-xiao @fan130 @fhljys @gadongji @haoqian-ms @haricr @hvermis @jihochang @milantomic6 @murilogr @najian @nicolaszhang @peshen @sharmm @tiffanyachen @wenbof @wezou2 @wuchunchunt19 @xiaoyinglj @yuanliu-ms @zhangyd2015 +/specification/datalake-analytics/ @brjohnstmsft @daschult @jihochang @matt1883 @ro-joowan @stankovski @vladbarosan +/specification/datalake-store/ @brjohnstmsft @daschult @jihochang @ro-joowan @stankovski @vladbarosan +/specification/datamigration/ @daschult @hitenjava @tiffanyachen +/specification/deploymentmanager/ @netrock +/specification/deviceprovisioningservices/ @kvish @mikekinsman @montgomp +/specification/devtestlabs/ @ajay-arora @daschult @iouri-s @ryanvog @steved0x +/specification/dns/ @daschult @karravi-msft @mikhailtryakhov @nkindberg @owolabi2 @stankovski @tbombach @vladbarosan @vladrai +/specification/documentdb/ @dmakwana +/specification/domainservices/ @daschult @jihochang +/specification/eventgrid/ @cpjagan @daschult @djyou @kalyanaj @scottholden +/specification/eventhub/ @biberli @daschult @gmainar @jihochang @sazeesha @sethmanheim @tiffanyachen @v-ajnava @vladbarosan +/specification/features/ @stankovski +/specification/graphrbac/ @brjohnstmsft @darshanhs90 @daschult @himanshumisra1 @lukaszstem @maboja-msft @mmacy @ppathan @sethmanheim @stankovski @vladbarosan +/specification/gsm/ @jeffrey-ace +/specification/hanaonazure/ @daschult @jovillas @pakdliu @tiffanyachen +/specification/hdinsight/ @daschult @pulkittomar @vladbarosan @wawon-msft +/specification/insights/ @gucalder @vladbarosan +/specification/intune/ @daschult @stankovski @vrmurthy01 +/specification/iothub/ @brjohnstmsft @daschult @jihochang @kvish @mastermanu @rajeevmv @rkmanda @ssankar1984 @vishal-gandhi @xscript +/specification/keyvault/ @brjohnstmsft @daschult @dragav @jihochang @msfcolombo @rijethma @schaabs @seanbamsft @tiffanyachen @vladbarosan +/specification/locationbasedservices/ @daschult @jcookit @jp94 +/specification/logic/ @brjohnstmsft @daschult @daviburg @pankajsn @shimedh @stankovski @steved0x @tbombach @tonytang-microsoft-com @vladbarosan +/specification/machinelearning/ @brjohnstmsft @daschult @ericwill-msft @garyericson @nonstatic2014 @ragargms @tudordid @vladbarosan +/specification/machinelearningcompute/ @daschult @shutchings +/specification/machinelearningexperimentation/ @daschult @ragargms +/specification/management/ @muazmian +/specification/managementgroups/ @rajshah11 +/specification/managementpartner/ @jeffrey-ace +/specification/marketplaceordering/ @daschult @prbansa @tiffanyachen +/specification/mediaservices/ @brianblum @brjohnstmsft @daschult @jonpayne @vladbarosan +/specification/migrate/ @amandeeps @ronehr +/specification/mobileengagement/ @brjohnstmsft @daschult @guperrot @mehrdadmzfr @pshrosbree @stankovski +/specification/monitor/ @asafst @daschult @davmc @gucalder @jihochang @johnkemnetz @micongjie @pkamath13 @ro-joowan @shriku11 @tiffanyachen @vladbarosan +/specification/msi/ @daschult @varunkch @vladbarosan +/specification/mysql/ @daschult @jihochang @qingqingyuan @rahulgouthamdotgs @sasankv-ms @suna-ms @tiffanyachen @vladbarosan +/specification/network/ @ajinkyapotdarvjti @akshaysngupta @allanbomsft @anavinahar @ankurchoubeymsft @azhao155 @bganapa @brjohnstmsft @chandrasekarsrinivasan @daschult @dedhar @deepakrajendranmsft @dihan0604 @dmakwana @evgenyagafonchikov @georgewallace @gimotwanmsft @gmainar @henry416 @himanshumisra1 @irrogozh @jihochang @jobatzil @kagamsft @lamchester @lukaszstem @maboja-msft @manjushachava @mattreatmsft @mikhailtryakhov @murilogr @nilambari @number213 @pacort @pashukl @priyanag @ritwikbasu @ro-joowan @rupalivohra @sethmanheim @skomarag @stankovski @sudhansu88 @tfitzmac @vinatara @vinayada1 @vladbarosan +/specification/notificationhubs/ @amolr @daschult @smithab @stankovski +/specification/operationalinsights/ @alexeldeib @chandrasekarsrinivasan @daschult @murilogr @sw47 @vladbarosan @xizhamsft +/specification/operationsmanagement/ @daschult @dashimi16 +/specification/policyinsights/ @bulentelmaci @tiffanyachen +/specification/postgresql/ @daschult @himanshumisra1 @jihochang @lukaszstem @maboja-msft @qingqingyuan @rahulgouthamdotgs @revas89 @sasankv-ms @sethmanheim @suna-ms @tiffanyachen @vladbarosan +/specification/powerbidedicated/ @daschult @selasagi @tarostok +/specification/powerbiembedded/ @daschult @mattmazzola @minewiskan +/specification/powerbipremium/ @michael-falk +/specification/provisioningservices/ @daschult @francisco-gamino @kvish @montgomp +/specification/recoveryservices/ @daschult @dragonfly91 @sonathan @vladbarosan +/specification/recoveryservicesbackup/ @daschult @dheerendrarathor @dragonfly91 @gmainar @markgalioto @vladbarosan +/specification/recoveryservicessiterecovery/ @avneeshrai @bsiva @daschult @dmakwana @himanshumisra1 @lukaszstem @maboja-msft @mikekinsman @mukum @sethmanheim @sudhansu88 @vladbarosan +/specification/redis/ @alfantp @brjohnstmsft @daschult @siddharthchatrolams @stankovski @steved0x @tiffanyachen @timlovellsmith @vladbarosan +/specification/relay/ @daschult @gmainar @sethmanheim @v-ajnava @vladbarosan +/specification/remoteapp/ @amarsi @calexan +/specification/reservations/ @corquiri @daschult +/specification/resourcehealth/ @daschult @himanshumisra1 @lukaszstem @maboja-msft @rajithanitc @sankalpsoni @sethmanheim @vladbarosan +/specification/resources/ @bganapa @brjohnstmsft @chandrasekarsrinivasan @chidmdxx @cyl3392207 @daschult @everfor @grzegorzzygmunt @jaredmoo @jihochang @luanshixia @mjfrb @muazmian @murilogr @pilor @rajshah11 @sendhil @stankovski @tbombach @tfitzmac @tudordid @vivsriaus @vladbarosan @wenwu449 @wilcobmsft @zjpjack +/specification/scheduler/ @daschult @derek1ee @pinwang81 @stankovski @tudordid +/specification/search/ @brjohnstmsft @daschult @seansaleh @tiffanyachen @tudordid @vladbarosan +/specification/servermanagement/ @daschult @r22016 @steved0x +/specification/service-map/ @daschult @daveirwin1 +/specification/servicebus/ @brjohnstmsft @daschult @gmainar @himanshumisra1 @jihochang @lukaszstem @maboja-msft @sazeesha @sethmanheim @sudhansu88 @tiffanyachen @v-ajnava @vladbarosan +/specification/servicefabric/ @daschult @jihochang @juhacket @ro-joowan @samedder @vipulm-msft @vladbarosan +/specification/siterecovery/ @avneeshrai +/specification/sql/ @akromm @btasdoven @chandrasekarsrinivasan @daschult @dnayantara @emgu-ms @ferno-ms @gmainar @jaredmoo @jcyang75 @jiahli @jiawang003 @jugeorge @kisantia @kosta-bizetic @maboja-msft @markobender @mihymel @mmacy @murilogr @nathannfan @payiazure @pixia @ro-joowan @sarvesh-s @scottholden @stankovski @tiffanyachen @tomapaunovic @tudordid @vladbarosan @vsporeddy @yaakoviyun @yiwuti @zhensun-sql +/specification/storage/ @bganapa @bingosummer @blueww @brjohnstmsft @daschult @emgerner-msft @jasonyang-msft @robinsh @stankovski @tudordid @vladbarosan +/specification/storageimportexport/ @daschult @leoz-ms @renashahmsft +/specification/storsimple/ @manaas-microsoft +/specification/storsimple8000series/ @daschult @dmakwana @himanshumisra1 @lukaszstem @maboja-msft @manaas-microsoft @sethmanheim @vladbarosan +/specification/streamanalytics/ @atpham256 @daschult @vladbarosan +/specification/subscription/ @daschult @wilcobmsft +/specification/subscriptions/ @stankovski +/specification/timeseriesinsights/ @daschult @sandshadow @vladbarosan @yeskarthik +/specification/trafficmanager/ @allencal @brjohnstmsft @daschult @hrkulkarmsft @tbombach @vladbarosan +/specification/visualstudio/ @amaljg @daschult @gmainar @himanshumisra1 @lukaszstem @maboja-msft @niblak @sethmanheim +/specification/web/ @csmengwan @daschult @ericsten-msft @gmainar @hforeste @lukaszstem @michimune @mikekinsman @mn263 @naveedaz @nking92 @shcummin @stankovski @stevenernst131 @tiffanyachen @vladbarosan @zooba diff --git a/README.md b/README.md index 328084f1bdef..39463e726b81 100644 --- a/README.md +++ b/README.md @@ -33,17 +33,19 @@ The structure of the directory should strictly follow these rules: 1. **Profile**: The profile holder contains the profiles' definition MD files. these files will contain information and references to the snapshots of the RPs' Resource types or Dataplane API versions that represent a specific profile. -2. **Specification**: This folder the is root folder for all Specs (Management and Dataplane) related docs. +1. **Specification**: This folder the is root folder for all Specs (Management and Dataplane) related docs. -3. **** Folders - each RP will have a separate folder +1. **{RP-Name} Folders** - each RP will have a separate folder -4. **'resource-manager' and 'data-plane' Folders**: the RPs can put specs in one of two categories: `resource-manager` (for ARM resources) and `data-plane` (for everything else) . The autorest configuration file (`readme.md`) for the RP should be inside this folder +1. **'resource-manager' and 'data-plane' Folders**: the RPs can put specs in one of two categories: `resource-manager` (for ARM resources) and `data-plane` (for everything else) . The autorest configuration file (`readme.md`) for the RP should be inside this folder -4. **API versions**: this folder will be the direct child of the category folder. there will be one such folder per resource type or dataplane service version. This folder will contain the OpenAPI validation Specs (Swaggers previously) and the examples folder. +1. **'preview' and 'stable' Folders**: Varying levels of stability exist in our repository. Each API Version folder should be categorized as either still accepting breaking changes, or no longer accepting breaking changes. This is not a direct analog for whether or not an API Version has the "-preview" suffix or not. SDKs that are generated from 'preview' folder items should indicate to their customers in the most idiomatic way that breaking changes may still be coming. -6. **Examples**: the example folder will contain the x-ms-examples files. it will reside under the APIs or Resources' version folders as different APIs or Resource types version can have different examples. +1. **API versions**: this folder will be the direct child of the category folder. there will be one such folder per resource type or dataplane service version. This folder will contain the OpenAPI validation Specs (Swaggers previously) and the examples folder. -7. **Notes**: +1. **Examples**: the example folder will contain the x-ms-examples files. it will reside under the APIs or Resources' version folders as different APIs or Resource types version can have different examples. + +1. **Notes**: - folder names should be singular (ie, 'profile' not 'profiles' ) -- this removes ambiguity for some non-english speakers. - generic folder names should be lower-case - proper-name/product name/namespace folders can be PascalCased (ie, "KeyVault") @@ -57,31 +59,37 @@ The structure should appear like so: | +---automation | | \---resource-manager | | \---Microsoft.Automation -| | \---2015-10-31 -| | \---examples +| | \---stable +| | \---2015-10-31 +| | \---examples | +---batch | | +---data-plane | | | \---Microsoft.Batch -| | | +---2015-12-01.2.2 -| | | +---2016-02-01.3.0 -| | | +---2016-07-01.3.1 -| | | +---2017-01-01.4.0 -| | | | \---examples -| | | \---2017-05-01.5.0 +| | | +---stable +| | | | +---2015-12-01.2.2 +| | | | +---2016-02-01.3.0 +| | | | +---2016-07-01.3.1 +| | | | +---2017-01-01.4.0 +| | | | \---examples +| | | \---preview +| | | \---2017-05-01.5.0 | | \---resource-manager | | \---Microsoft.Batch -| | +---2015-12-01 -| | +---2017-01-01 -| | | \---examples +| | +---stable +| | | +---2015-12-01 +| | | +---2017-01-01 +| | | \---examples | | \---2017-05-01 | | \---examples | +---billing | \---resource-manager | \---Microsoft.Billing -| +---2017-02-27-preview -| | \---examples -| \---2017-04-24-preview -| \---examples +| \---stable +| | +---2017-02-27-preview +| | \---examples +| +---preview +| \---2017-04-24-preview +| \---examples \--- readme.md ``` diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 000000000000..568f4b8e5b33 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3651 @@ +{ + "name": "azure-rest-api-specs-tests", + "version": "0.1.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@microsoft.azure/async-io": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@microsoft.azure/async-io/-/async-io-1.0.24.tgz", + "integrity": "sha1-PpYUp5Ixe3IwIC3ALytLuNjFALk=", + "dev": true, + "requires": { + "@microsoft.azure/polyfill": "1.0.19", + "file-url": "2.0.2", + "get-uri": "2.0.1", + "pify": "2.3.0", + "proper-lockfile": "2.0.1", + "urijs": "1.18.12" + } + }, + "@microsoft.azure/autorest-extension-base": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@microsoft.azure/autorest-extension-base/-/autorest-extension-base-1.0.13.tgz", + "integrity": "sha1-/VobUj8CzK3525vK8Jez/5mSgeY=", + "dev": true, + "requires": { + "vscode-jsonrpc": "3.6.0" + }, + "dependencies": { + "vscode-jsonrpc": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.6.0.tgz", + "integrity": "sha512-PqHHjuTlz3ks0vyZv3IkdduJReA/lqe6OP5zRl5nXn2ptMLW++fBotNyayyZEQLIF6nNrx/Rn6WhMSHElf02Yw==", + "dev": true + } + } + }, + "@microsoft.azure/console": { + "version": "1.0.33", + "resolved": "https://registry.npmjs.org/@microsoft.azure/console/-/console-1.0.33.tgz", + "integrity": "sha1-cq7ytSwmDeoNQDvwHMSTuOS4oI8=", + "dev": true, + "requires": { + "@microsoft.azure/polyfill": "1.0.19", + "chalk": "1.1.3", + "marked": "0.3.17", + "marked-terminal": "2.0.0", + "memorystream": "0.3.1", + "moment": "2.21.0", + "yargs": "8.0.2" + } + }, + "@microsoft.azure/eventing": { + "version": "1.0.18", + "resolved": "https://registry.npmjs.org/@microsoft.azure/eventing/-/eventing-1.0.18.tgz", + "integrity": "sha1-UhBn6KPaNpuuF2K2OdZec8FKePA=", + "dev": true, + "requires": { + "@microsoft.azure/polyfill": "1.0.19" + } + }, + "@microsoft.azure/literate": { + "version": "1.0.25", + "resolved": "https://registry.npmjs.org/@microsoft.azure/literate/-/literate-1.0.25.tgz", + "integrity": "sha1-DvyxRHQOOmNrg2j88r0Buiri2eQ=", + "dev": true, + "requires": { + "@microsoft.azure/async-io": "1.0.24", + "@microsoft.azure/console": "1.0.33", + "@microsoft.azure/eventing": "1.0.18", + "@microsoft.azure/polyfill": "1.0.19", + "commonmark": "0.27.0", + "jsonpath": "0.2.12", + "linq-es2015": "2.4.31", + "safe-eval": "0.3.0", + "source-map": "0.5.7", + "vscode-jsonrpc": "3.3.1", + "yaml-ast-parser": "https://github.com/olydis/yaml-ast-parser/releases/download/0.0.34/yaml-ast-parser-0.0.34.tgz", + "yargs": "8.0.2" + } + }, + "@microsoft.azure/polyfill": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/@microsoft.azure/polyfill/-/polyfill-1.0.19.tgz", + "integrity": "sha1-F3KY21VdYMdTs6I8eZpcKjbK6zc=", + "dev": true, + "requires": { + "source-map-support": "0.4.18" + } + }, + "@types/caseless": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.1.tgz", + "integrity": "sha512-FhlMa34NHp9K5MY1Uz8yb+ZvuX0pnvn3jScRSNAb75KHGB8d3rEU6hqMs3Z2vjuytcMfRg6c5CHMc3wtYyD2/A==", + "dev": true + }, + "@types/form-data": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-2.2.1.tgz", + "integrity": "sha512-JAMFhOaHIciYVh8fb5/83nmuO/AHwmto+Hq7a9y8FzLDcC1KCU344XDOMEmahnrTFlHjgh4L0WJFczNIX2GxnQ==", + "dev": true, + "requires": { + "@types/node": "8.9.4" + } + }, + "@types/node": { + "version": "8.9.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.9.4.tgz", + "integrity": "sha512-dSvD36qnQs78G1BPsrZFdPpvLgMW/dnvr5+nTW2csMs5TiP9MOXrjUbnMZOEwnIuBklXtn7b6TPA2Cuq07bDHA==", + "dev": true + }, + "@types/request": { + "version": "2.47.0", + "resolved": "https://registry.npmjs.org/@types/request/-/request-2.47.0.tgz", + "integrity": "sha512-/KXM5oev+nNCLIgBjkwbk8VqxmzI56woD4VUxn95O+YeQ8hJzcSmIZ1IN3WexiqBb6srzDo2bdMbsXxgXNkz5Q==", + "dev": true, + "requires": { + "@types/caseless": "0.12.1", + "@types/form-data": "2.2.1", + "@types/node": "8.9.4", + "@types/tough-cookie": "2.3.2" + } + }, + "@types/tough-cookie": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.2.tgz", + "integrity": "sha512-vOVmaruQG5EatOU/jM6yU2uCp3Lz6mK1P5Ztu4iJjfM4SVHU9XYktPUQtKlIXuahqXHdEyUarMrBEwg5Cwu+bA==", + "dev": true + }, + "@types/uuid": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-3.4.3.tgz", + "integrity": "sha512-5fRLCYhLtDb3hMWqQyH10qtF+Ud2JnNCXTCZ+9ktNdCcgslcuXkDTkFcJNk++MT29yDntDnlF1+jD+uVGumsbw==", + "dev": true, + "requires": { + "@types/node": "8.9.4" + } + }, + "JSONSelect": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.4.0.tgz", + "integrity": "sha1-oI7cxn6z/L6Z7WMIVTRKDPKCu40=", + "dev": true + }, + "adal-node": { + "version": "0.1.28", + "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.1.28.tgz", + "integrity": "sha1-RoxLs+u9lrEnBmn0ucuk4AZepIU=", + "dev": true, + "requires": { + "@types/node": "8.9.4", + "async": "1.0.0", + "date-utils": "1.2.21", + "jws": "3.1.4", + "request": "2.83.0", + "underscore": "1.7.0", + "uuid": "3.2.1", + "xmldom": "0.1.27", + "xpath.js": "1.1.0" + } + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "ansicolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.2.1.tgz", + "integrity": "sha1-vgiVmQl7dKXJxKhKDNvNtivYeu8=", + "dev": true + }, + "append-field": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-0.1.0.tgz", + "integrity": "sha1-bdxY+gg8e8VF08WZWygwzCNm1Eo=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "1.0.3" + } + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "dev": true + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "autorest": { + "version": "2.0.4245", + "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4245.tgz", + "integrity": "sha512-CRxb97Ib3b6GWpF2bE37Vvqtd5KfsZ912OBWe0k92Zvk8LxY4WcQu4C6F4Numm78m8FdIWTAH4u9uT91riVdxQ==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", + "dev": true + }, + "azure-arm-resource": { + "version": "2.0.0-preview", + "resolved": "https://registry.npmjs.org/azure-arm-resource/-/azure-arm-resource-2.0.0-preview.tgz", + "integrity": "sha1-lYAQoY+V/4LpqZU3E7oMydJxEks=", + "dev": true, + "requires": { + "ms-rest": "2.3.1", + "ms-rest-azure": "2.5.4" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base64url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-2.0.0.tgz", + "integrity": "sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "1.0.4", + "debug": "2.6.9", + "depd": "1.1.2", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.16" + } + }, + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "dev": true, + "requires": { + "hoek": "4.2.1" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "busboy": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-0.2.14.tgz", + "integrity": "sha1-bCpiLvz0fFe7vh4qnDetNseSVFM=", + "dev": true, + "requires": { + "dicer": "0.2.5", + "readable-stream": "1.1.14" + }, + "dependencies": { + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + } + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cardinal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-1.0.0.tgz", + "integrity": "sha1-UOIcGwqjdyn5N33vGWtanOyTLuk=", + "dev": true, + "requires": { + "ansicolors": "0.2.1", + "redeyed": "1.0.1" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "cjson": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/cjson/-/cjson-0.2.1.tgz", + "integrity": "sha1-c82KrWXZ4VBfmvF0TTt5wVJ2gqU=", + "dev": true + }, + "cli-table": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz", + "integrity": "sha1-9TsFJmqLGguTSz0IIebi3FkUriM=", + "dev": true, + "requires": { + "colors": "1.0.3" + } + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "color": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color/-/color-2.0.1.tgz", + "integrity": "sha512-ubUCVVKfT7r2w2D3qtHakj8mbmKms+tThR8gI8zEYCbUBl8/voqFGt3kgBqGwXAopgXybnkuOq+qMYCRrp4cXw==", + "dev": true, + "requires": { + "color-convert": "1.9.1", + "color-string": "1.5.2" + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-string": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.2.tgz", + "integrity": "sha1-JuRYFLw8mny9Z1FkikFDRRSnc6k=", + "dev": true, + "requires": { + "color-name": "1.1.3", + "simple-swizzle": "0.2.2" + } + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", + "dev": true + }, + "combined-stream": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "commander": { + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.0.tgz", + "integrity": "sha512-7B1ilBwtYSbetCgTY1NJFg+gVpestg0fdA1MhC1Vs4ssyfSXnCAjFr+QcQM9/RedXC0EaUx1sG8Smgw2VfgKEg==", + "dev": true + }, + "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" + } + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.1.tgz", + "integrity": "sha512-gslSSJx03QKa59cIKqeJO9HQ/WZMotvYJCuaUULrLpjj8oG40kV2Z+gz82pVxlTkOADi4PJxQPPfhl1ELYrrXw==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.5", + "typedarray": "0.0.6" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "cookiejar": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.1.tgz", + "integrity": "sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "4.1.2", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + }, + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "dev": true, + "requires": { + "boom": "5.2.0" + }, + "dependencies": { + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", + "dev": true, + "requires": { + "hoek": "4.2.1" + } + } + } + }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + } + }, + "data-uri-to-buffer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", + "dev": true + }, + "date-utils": { + "version": "1.2.21", + "resolved": "https://registry.npmjs.org/date-utils/-/date-utils-1.2.21.tgz", + "integrity": "sha1-YfsWzcEnSzyayq/+n8ad+HIKK2Q=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "deep-extend": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.0.tgz", + "integrity": "sha1-bvSgmwX5iw41jW2T1Mo8rsZnKAM=", + "dev": true + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "deref": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/deref/-/deref-0.7.3.tgz", + "integrity": "sha512-9ROdWS8nWgz/uJxYWIDZyEAP+oANSl/pNQO27GFJWptVVocqBQ95iKmcboxjvjPQ0rn3IpJcA450hIJpznzVLg==", + "dev": true, + "requires": { + "deep-extend": "0.5.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "dicer": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.2.5.tgz", + "integrity": "sha1-WZbAhrszIYyBLAkL3cCc0S+stw8=", + "dev": true, + "requires": { + "readable-stream": "1.1.14", + "streamsearch": "0.1.2" + }, + "dependencies": { + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + } + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "drange": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.0.1.tgz", + "integrity": "sha512-PVkrAwra9MnIY6QIa9YMlEHkfbcikjK+W/X/O0BNXG14y3O8vqGhzvP8TKlu4sFCJn7V2raugY8SOjDXVHti0g==", + "dev": true + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, + "ebnf-parser": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/ebnf-parser/-/ebnf-parser-0.1.10.tgz", + "integrity": "sha1-zR9rpHfFY4xAyX7ZtXLbW6tdgzE=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "ecdsa-sig-formatter": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz", + "integrity": "sha1-S8kmJ07Dtau1AW5+HWCSGsJisqE=", + "dev": true, + "requires": { + "base64url": "2.0.0", + "safe-buffer": "5.1.1" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "dev": true + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "dev": true, + "requires": { + "is-arrayish": "0.2.1" + } + }, + "es6-promise": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", + "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-0.0.21.tgz", + "integrity": "sha1-U9ZSz6EDA4gnlFilJmxf/HCcY8M=", + "dev": true, + "requires": { + "esprima": "1.0.4", + "estraverse": "0.0.4", + "source-map": "0.5.7" + }, + "dependencies": { + "esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=", + "dev": true + } + } + }, + "esprima": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.0.0.tgz", + "integrity": "sha1-U88kes2ncxPlUcOqLnM0LT+099k=", + "dev": true + }, + "estraverse": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz", + "integrity": "sha1-AaCTLf7ldGhKWYr1pnw7+bZCjbI=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "dev": true + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", + "dev": true + }, + "faker": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/faker/-/faker-4.1.0.tgz", + "integrity": "sha1-HkW7vsxndLPBlfrSg1EJxtdIzD8=", + "dev": true + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, + "file-url": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/file-url/-/file-url-2.0.2.tgz", + "integrity": "sha1-6VF4TXkJUSfTcTApqwY/QIGMoq4=", + "dev": true + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "dev": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.6", + "mime-types": "2.1.18" + } + }, + "format-util": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.3.tgz", + "integrity": "sha1-Ay3KShFiYqEsQ/TD7IVmQWxbLZU=", + "dev": true + }, + "formidable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.0.tgz", + "integrity": "sha512-hr9aT30rAi7kf8Q2aaTpSP7xGMhlJ+MdrUDVZs3rxbD3L/K46A86s2VY7qC2D2kGYGBtiT/3j6wTx1eeUq5xAQ==", + "dev": true + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "fs-extra": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "3.0.1", + "universalify": "0.1.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "dev": true, + "requires": { + "readable-stream": "1.1.14", + "xregexp": "2.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + } + } + }, + "get-caller-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", + "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.1.tgz", + "integrity": "sha512-7aelVrYqCLuVjq2kEKRTH8fXPTC0xKTkM+G7UlFkEwCXY3sFbSxvY375JoFowOAYbkaU47SrBvOefUlLZZ+6QA==", + "dev": true, + "requires": { + "data-uri-to-buffer": "1.2.0", + "debug": "2.6.9", + "extend": "3.0.1", + "file-uri-to-path": "1.0.0", + "ftp": "0.3.10", + "readable-stream": "2.3.5" + } + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + } + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "graphlib": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.5.tgz", + "integrity": "sha512-XvtbqCcw+EM5SqQrIetIKKD+uZVNQtDPD1goIg7K73RuRZtVI5rYMdcCVSHm/AS1sCBZ7vt0p5WgXouucHQaOA==", + "dev": true, + "requires": { + "lodash": "4.17.5" + } + }, + "growl": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", + "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "dev": true, + "requires": { + "ajv": "5.5.2", + "har-schema": "2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "dev": true, + "requires": { + "boom": "4.3.1", + "cryptiles": "3.1.2", + "hoek": "4.2.1", + "sntp": "2.1.0" + } + }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, + "hoek": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", + "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==", + "dev": true + }, + "hosted-git-info": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", + "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==", + "dev": true + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "dev": true, + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.4.0" + }, + "dependencies": { + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", + "dev": true + } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "jison": { + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/jison/-/jison-0.4.13.tgz", + "integrity": "sha1-kEFwfWIkE2f1iDRTK58ZwsNvrHg=", + "dev": true, + "requires": { + "JSONSelect": "0.4.0", + "cjson": "0.2.1", + "ebnf-parser": "0.1.10", + "escodegen": "0.0.21", + "esprima": "1.0.4", + "jison-lex": "0.2.1", + "lex-parser": "0.1.4", + "nomnom": "1.5.2" + }, + "dependencies": { + "esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=", + "dev": true + } + } + }, + "jison-lex": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/jison-lex/-/jison-lex-0.2.1.tgz", + "integrity": "sha1-rEuBXozOUTLrErXfz+jXB7iETf4=", + "dev": true, + "requires": { + "lex-parser": "0.1.4", + "nomnom": "1.5.2" + } + }, + "js-base64": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.3.tgz", + "integrity": "sha512-H7ErYLM34CvDMto3GbD6xD0JLUGYXR3QTcH6B/tr4Hi/QpSThnCsIp+Sy5FRTw3B0d6py4HcNkW7nO/wdtGWEw==", + "dev": true + }, + "js-yaml": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", + "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", + "dev": true, + "requires": { + "argparse": "1.0.10", + "esprima": "4.0.0" + }, + "dependencies": { + "esprima": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", + "dev": true + } + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "json-pointer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.0.tgz", + "integrity": "sha1-jlAFUKaqxUZKRzN32leqbMIoKNc=", + "dev": true, + "requires": { + "foreach": "2.0.5" + } + }, + "json-refs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.4.tgz", + "integrity": "sha512-UFnB5j1C7XrUWQIlFGrjerFVuc04TZAyoEavfb0VofdjguWWN97aCtWsv1uX6pXylJiLw+agsyTPCnNjL6W4ag==", + "dev": true, + "requires": { + "commander": "2.11.0", + "graphlib": "2.1.5", + "js-yaml": "3.11.0", + "lodash": "4.17.5", + "native-promise-only": "0.8.1", + "path-loader": "1.0.4", + "slash": "1.0.0", + "uri-js": "3.0.2" + }, + "dependencies": { + "commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", + "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "dev": true + } + } + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-faker": { + "version": "0.5.0-rc9", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc9.tgz", + "integrity": "sha1-yv8wpFX0+LJnxZdGuzqXVBQIfBE=", + "dev": true, + "requires": { + "deref": "0.7.3", + "json-schema-ref-parser": "3.3.1", + "randexp": "0.4.9", + "tslib": "1.9.0" + } + }, + "json-schema-ref-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-3.3.1.tgz", + "integrity": "sha512-stQTMhec2R/p2L9dH4XXRlpNCP0mY8QrLd/9Kl+8SHJQmwHtE1nDfXH4wbsSM+GkJMl8t92yZbI0OIol432CIQ==", + "dev": true, + "requires": { + "call-me-maybe": "1.0.1", + "debug": "3.1.0", + "es6-promise": "4.2.4", + "js-yaml": "3.11.0", + "ono": "4.0.3", + "z-schema": "3.19.1" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11" + } + }, + "jsonpath": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-0.2.12.tgz", + "integrity": "sha1-W/nZEftGFsHjNwvs658NskrjTNI=", + "dev": true, + "requires": { + "esprima": "1.2.2", + "jison": "0.4.13", + "static-eval": "0.2.3", + "underscore": "1.7.0" + }, + "dependencies": { + "esprima": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz", + "integrity": "sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs=", + "dev": true + } + } + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jwa": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.1.5.tgz", + "integrity": "sha1-oFUs4CIHQs1S4VN3SjKQXDDnVuU=", + "dev": true, + "requires": { + "base64url": "2.0.0", + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.9", + "safe-buffer": "5.1.1" + } + }, + "jws": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.1.4.tgz", + "integrity": "sha1-+ei5M46KhHJ31kRLFGT2GIDgUKI=", + "dev": true, + "requires": { + "base64url": "2.0.0", + "jwa": "1.1.5", + "safe-buffer": "5.1.1" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "1.0.0" + } + }, + "lex-parser": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/lex-parser/-/lex-parser-0.1.4.tgz", + "integrity": "sha1-ZMTwJfF/1Tv7RXY/rrFvAVp0dVA=", + "dev": true + }, + "linq": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.0.9.tgz", + "integrity": "sha512-9kDSW2s4sjajLcGN4f+pRiwYZrbqmwDibQyysEgRSvA8dgHmqEEruYQX4GNBQAiOYcMv8IdUbCWgDq6eUidkKQ==", + "dev": true + }, + "linq-es2015": { + "version": "2.4.31", + "resolved": "https://registry.npmjs.org/linq-es2015/-/linq-es2015-2.4.31.tgz", + "integrity": "sha1-ojefUjrJVW3O6uppnChfEWokg68=", + "dev": true, + "requires": { + "mocha-lcov-reporter": "1.3.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + } + }, + "lodash": { + "version": "4.17.5", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", + "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==", + "dev": true + }, + "lodash._arraypool": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._arraypool/-/lodash._arraypool-2.4.1.tgz", + "integrity": "sha1-6I7suS4ruEyQZWEv2VigcZzUf5Q=", + "dev": true + }, + "lodash._basebind": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._basebind/-/lodash._basebind-2.4.1.tgz", + "integrity": "sha1-6UC5690nwyfgqNqxtVkWxTQelXU=", + "dev": true, + "requires": { + "lodash._basecreate": "2.4.1", + "lodash._setbinddata": "2.4.1", + "lodash._slice": "2.4.1", + "lodash.isobject": "2.4.1" + } + }, + "lodash._baseclone": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._baseclone/-/lodash._baseclone-2.4.1.tgz", + "integrity": "sha1-MPgj5X4X43NdODvWK2Czh1Q7QYY=", + "dev": true, + "requires": { + "lodash._getarray": "2.4.1", + "lodash._releasearray": "2.4.1", + "lodash._slice": "2.4.1", + "lodash.assign": "2.4.1", + "lodash.foreach": "2.4.1", + "lodash.forown": "2.4.1", + "lodash.isarray": "2.4.1", + "lodash.isobject": "2.4.1" + }, + "dependencies": { + "lodash.assign": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-2.4.1.tgz", + "integrity": "sha1-hMOVlt1xGBqXsGUpE6fJZ15Jsao=", + "dev": true, + "requires": { + "lodash._basecreatecallback": "2.4.1", + "lodash._objecttypes": "2.4.1", + "lodash.keys": "2.4.1" + } + } + } + }, + "lodash._basecreate": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-2.4.1.tgz", + "integrity": "sha1-+Ob1tXip405UEXm1a47uv0oofgg=", + "dev": true, + "requires": { + "lodash._isnative": "2.4.1", + "lodash.isobject": "2.4.1", + "lodash.noop": "2.4.1" + } + }, + "lodash._basecreatecallback": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._basecreatecallback/-/lodash._basecreatecallback-2.4.1.tgz", + "integrity": "sha1-fQsmdknLKeehOdAQO3wR+uhOSFE=", + "dev": true, + "requires": { + "lodash._setbinddata": "2.4.1", + "lodash.bind": "2.4.1", + "lodash.identity": "2.4.1", + "lodash.support": "2.4.1" + } + }, + "lodash._basecreatewrapper": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._basecreatewrapper/-/lodash._basecreatewrapper-2.4.1.tgz", + "integrity": "sha1-TTHy595+E0+/KAN2K4FQsyUZZm8=", + "dev": true, + "requires": { + "lodash._basecreate": "2.4.1", + "lodash._setbinddata": "2.4.1", + "lodash._slice": "2.4.1", + "lodash.isobject": "2.4.1" + } + }, + "lodash._createwrapper": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._createwrapper/-/lodash._createwrapper-2.4.1.tgz", + "integrity": "sha1-UdaVeXPaTtVW43KQ2MGhjFPeFgc=", + "dev": true, + "requires": { + "lodash._basebind": "2.4.1", + "lodash._basecreatewrapper": "2.4.1", + "lodash._slice": "2.4.1", + "lodash.isfunction": "2.4.1" + } + }, + "lodash._getarray": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._getarray/-/lodash._getarray-2.4.1.tgz", + "integrity": "sha1-+vH3+BD6mFolHCGHQESBCUg55e4=", + "dev": true, + "requires": { + "lodash._arraypool": "2.4.1" + } + }, + "lodash._isnative": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._isnative/-/lodash._isnative-2.4.1.tgz", + "integrity": "sha1-PqZAS3hKe+g2x7V1gOHN95sUgyw=", + "dev": true + }, + "lodash._maxpoolsize": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._maxpoolsize/-/lodash._maxpoolsize-2.4.1.tgz", + "integrity": "sha1-nUgvRjuOZq++WcLBTtsRcGAXIzQ=", + "dev": true + }, + "lodash._objecttypes": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz", + "integrity": "sha1-fAt/admKH3ZSn4kLDNsbTf7BHBE=", + "dev": true + }, + "lodash._releasearray": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._releasearray/-/lodash._releasearray-2.4.1.tgz", + "integrity": "sha1-phOWMNdtFTawfdyAliiJsIL2pkE=", + "dev": true, + "requires": { + "lodash._arraypool": "2.4.1", + "lodash._maxpoolsize": "2.4.1" + } + }, + "lodash._setbinddata": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._setbinddata/-/lodash._setbinddata-2.4.1.tgz", + "integrity": "sha1-98IAzRuS7yNrOZ7s9zxkjReqlNI=", + "dev": true, + "requires": { + "lodash._isnative": "2.4.1", + "lodash.noop": "2.4.1" + } + }, + "lodash._shimkeys": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz", + "integrity": "sha1-bpzJZm/wgfC1psl4uD4kLmlJ0gM=", + "dev": true, + "requires": { + "lodash._objecttypes": "2.4.1" + } + }, + "lodash._slice": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash._slice/-/lodash._slice-2.4.1.tgz", + "integrity": "sha1-dFz0GlNZexj2iImFREBe+isG2Q8=", + "dev": true + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true + }, + "lodash.bind": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-2.4.1.tgz", + "integrity": "sha1-XRn6AFyMTSNvr0dCx7eh/Kvikmc=", + "dev": true, + "requires": { + "lodash._createwrapper": "2.4.1", + "lodash._slice": "2.4.1" + } + }, + "lodash.clonedeep": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-2.4.1.tgz", + "integrity": "sha1-8pIDtAsS/uCkXTYxZIJZvrq8eGg=", + "dev": true, + "requires": { + "lodash._baseclone": "2.4.1", + "lodash._basecreatecallback": "2.4.1" + } + }, + "lodash.foreach": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-2.4.1.tgz", + "integrity": "sha1-/j/Do0yGyUyrb5UiVgKCdB4BYwk=", + "dev": true, + "requires": { + "lodash._basecreatecallback": "2.4.1", + "lodash.forown": "2.4.1" + } + }, + "lodash.forown": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.forown/-/lodash.forown-2.4.1.tgz", + "integrity": "sha1-eLQer+FAX6lmRZ6kGT/VAtCEUks=", + "dev": true, + "requires": { + "lodash._basecreatecallback": "2.4.1", + "lodash._objecttypes": "2.4.1", + "lodash.keys": "2.4.1" + } + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "lodash.identity": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.identity/-/lodash.identity-2.4.1.tgz", + "integrity": "sha1-ZpTP+mX++TH3wxzobHRZfPVg9PE=", + "dev": true + }, + "lodash.isarray": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-2.4.1.tgz", + "integrity": "sha1-tSoybB9i9tfac6MdVAHfbvRPD6E=", + "dev": true, + "requires": { + "lodash._isnative": "2.4.1" + } + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.isfunction": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-2.4.1.tgz", + "integrity": "sha1-LP1XXHPkmKtX4xm3f6Aq3vE6lNE=", + "dev": true + }, + "lodash.isobject": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-2.4.1.tgz", + "integrity": "sha1-Wi5H/mmVPx7mMafrof5k0tBlWPU=", + "dev": true, + "requires": { + "lodash._objecttypes": "2.4.1" + } + }, + "lodash.keys": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-2.4.1.tgz", + "integrity": "sha1-SN6kbfj/djKxDXBrissmWR4rNyc=", + "dev": true, + "requires": { + "lodash._isnative": "2.4.1", + "lodash._shimkeys": "2.4.1", + "lodash.isobject": "2.4.1" + } + }, + "lodash.noop": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.noop/-/lodash.noop-2.4.1.tgz", + "integrity": "sha1-T7VPgWZS5a4Q6PcvcXo4jHMmU4o=", + "dev": true + }, + "lodash.support": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/lodash.support/-/lodash.support-2.4.1.tgz", + "integrity": "sha1-Mg4LZwMWc8KNeiu12eAzGkUkBRU=", + "dev": true, + "requires": { + "lodash._isnative": "2.4.1" + } + }, + "lodash.toarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", + "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=", + "dev": true + }, + "lru-cache": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz", + "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==", + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "marked": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.17.tgz", + "integrity": "sha512-+AKbNsjZl6jFfLPwHhWmGTqE009wTKn3RTmn9K8oUKHrX/abPJjtcRtXpYB/FFrwPJRUA86LX/de3T0knkPCmQ==", + "dev": true + }, + "marked-terminal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-2.0.0.tgz", + "integrity": "sha1-Xq9Wi+ZvaGVBr6UqVYKAMQox3i0=", + "dev": true, + "requires": { + "cardinal": "1.0.0", + "chalk": "1.1.3", + "cli-table": "0.3.1", + "lodash.assign": "4.2.0", + "node-emoji": "1.8.1" + } + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dev": true, + "requires": { + "mimic-fn": "1.2.0" + } + }, + "memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "dev": true + }, + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dev": true, + "requires": { + "mime-db": "1.33.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.11" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mocha": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.0.4.tgz", + "integrity": "sha512-nMOpAPFosU1B4Ix1jdhx5e3q7XO55ic5a8cgYvW27CequcEY+BabS0kUVL1Cw1V5PuVHZWeNRWFLmEPexo79VA==", + "dev": true, + "requires": { + "browser-stdout": "1.3.1", + "commander": "2.11.0", + "debug": "3.1.0", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.2", + "growl": "1.10.3", + "he": "1.1.1", + "mkdirp": "0.5.1", + "supports-color": "4.4.0" + }, + "dependencies": { + "commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", + "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "supports-color": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", + "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "mocha-lcov-reporter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mocha-lcov-reporter/-/mocha-lcov-reporter-1.3.0.tgz", + "integrity": "sha1-Rpve9PivyaEWBW8HnfYYLQr7A4Q=", + "dev": true + }, + "moment": { + "version": "2.21.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.21.0.tgz", + "integrity": "sha512-TCZ36BjURTeFTM/CwRcViQlfkMvL1/vFISuNLO5GkcVm1+QHfbSiNqZuWeMFjj1/3+uAjXswgRk30j1kkLYJBQ==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "ms-rest": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.3.1.tgz", + "integrity": "sha512-NfDgGr8dzkwOUKUdGLugfm8aiMTGVeObM6Y8m6oTGut/6lfmTxi7zsKr7E5blFJhrX7IcWKfNbEYTBFp1M/YyQ==", + "dev": true, + "requires": { + "@types/node": "8.9.4", + "@types/request": "2.47.0", + "@types/uuid": "3.4.3", + "duplexer": "0.1.1", + "is-buffer": "1.1.6", + "is-stream": "1.1.0", + "moment": "2.21.0", + "request": "2.83.0", + "through": "2.3.8", + "tunnel": "0.0.5", + "uuid": "3.2.1" + } + }, + "ms-rest-azure": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/ms-rest-azure/-/ms-rest-azure-2.5.4.tgz", + "integrity": "sha512-SwycoZsBWpqxk9TvvzsoZ0/RQyT3c8lxBJmP7eXSBaG+pm9AmlRrkJwqCqNmAU1H/zcRMqhLFci276Sh4bmdCA==", + "dev": true, + "requires": { + "@types/node": "9.4.6", + "@types/uuid": "3.4.3", + "adal-node": "0.1.28", + "async": "2.6.0", + "moment": "2.21.0", + "ms-rest": "2.3.1", + "uuid": "3.2.1" + }, + "dependencies": { + "@types/node": { + "version": "9.4.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-9.4.6.tgz", + "integrity": "sha512-CTUtLb6WqCCgp6P59QintjHWqzf4VL1uPA27bipLAPxFqrtK1gEYllePzTICGqQ8rYsCbpnsNypXjjDzGAAjEQ==", + "dev": true + }, + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "dev": true, + "requires": { + "lodash": "4.17.5" + } + } + } + }, + "multer": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.3.0.tgz", + "integrity": "sha1-CSsmcPaEb6SRSWXvyM+Uwg/sbNI=", + "dev": true, + "requires": { + "append-field": "0.1.0", + "busboy": "0.2.14", + "concat-stream": "1.6.1", + "mkdirp": "0.5.1", + "object-assign": "3.0.0", + "on-finished": "2.3.0", + "type-is": "1.6.16", + "xtend": "4.0.1" + } + }, + "native-promise-only": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", + "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=", + "dev": true + }, + "node-emoji": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.8.1.tgz", + "integrity": "sha512-+ktMAh1Jwas+TnGodfCfjUbJKoANqPaJFN0z0iqh41eqD8dvguNzcitVSBSVK1pidz0AqGbLKcoVuVLRVZ/aVg==", + "dev": true, + "requires": { + "lodash.toarray": "4.4.0" + } + }, + "nomnom": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.5.2.tgz", + "integrity": "sha1-9DRUSKhTz71cDSYyDyR3qwUm/i8=", + "dev": true, + "requires": { + "colors": "0.5.1", + "underscore": "1.1.7" + }, + "dependencies": { + "colors": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", + "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", + "dev": true + }, + "underscore": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.1.7.tgz", + "integrity": "sha1-QLq4S60Z0jAJbo1u9ii/8FXYPbA=", + "dev": true + } + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, + "requires": { + "hosted-git-info": "2.6.0", + "is-builtin-module": "1.0.0", + "semver": "5.5.0", + "validate-npm-package-license": "3.0.3" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "2.0.1" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oad": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/oad/-/oad-0.1.9.tgz", + "integrity": "sha512-S2PkVuMbSHqiPTzJTqQJkbtBHxfc0yvi7oGqpw2R7yUby0A9PDehBphduTBNat5cMuCWIsiauVArbjhcNq9lIQ==", + "dev": true, + "requires": { + "autorest": "2.0.4245", + "glob": "5.0.15", + "js-yaml": "3.11.0", + "json-pointer": "0.6.0", + "request": "2.83.0", + "winston": "2.4.0", + "yargs": "6.6.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "1.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "4.2.1" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "3.0.0" + } + } + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, + "oav": { + "version": "0.4.34", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.4.34.tgz", + "integrity": "sha1-1xFWYKPUqfkzEfC7qmX5q3mpAvU=", + "dev": true, + "requires": { + "@microsoft.azure/autorest-extension-base": "1.0.13", + "azure-arm-resource": "2.0.0-preview", + "glob": "5.0.15", + "js-yaml": "3.11.0", + "json-pointer": "0.6.0", + "jsonpath": "0.2.12", + "linq": "3.0.9", + "lodash": "4.17.5", + "moment": "2.21.0", + "ms-rest": "2.3.1", + "ms-rest-azure": "2.5.4", + "recursive-readdir": "2.2.2", + "request": "2.83.0", + "swagger-parser": "3.4.2", + "swagger-tools": "0.10.3", + "sway": "github:amarzavery/sway#21d2160311380134e31e252a7e1ce1268441c8c3", + "uuid": "3.2.1", + "vscode-jsonrpc": "3.3.1", + "winston": "2.4.0", + "yargs": "6.6.0", + "yuml2svg": "3.1.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "1.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "4.2.1" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "3.0.0" + } + } + } + }, + "object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "ono": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.3.tgz", + "integrity": "sha512-7QIxG4UB00H7CR7fhXC/U7VhB5DK9wsYLwaYBui1JmQoXtLkhIBn3fbuk6FgAP+ctWeBsWVTM+R/bThvUZN+ww==", + "dev": true, + "requires": { + "format-util": "1.0.3" + } + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "dev": true, + "requires": { + "p-try": "1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "1.2.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.1" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-loader": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/path-loader/-/path-loader-1.0.4.tgz", + "integrity": "sha512-k/IPo9OWyofATP5gwIehHHQoFShS37zsSIsejKe6fjI+tqK+FnRpiSg4ZfWUpxb0g2PfCreWPqBD4ayjqjqkdQ==", + "dev": true, + "requires": { + "native-promise-only": "0.8.1", + "superagent": "3.8.2" + } + }, + "path-to-regexp": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.0.tgz", + "integrity": "sha512-zJcOPeBsraLjWXwUzFMPzH3QO2CmO1yRggtADPJjOTyCF5csQxfUGJL+CbyyRvIS09wOipi4F/fgRhdmVGSwxQ==", + "dev": true + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "2.3.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "proper-lockfile": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-2.0.1.tgz", + "integrity": "sha1-FZ+wYZPTIAP0s2kd0uwaY0qoDR0=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "retry": "0.10.1" + } + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "dev": true + }, + "randexp": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.9.tgz", + "integrity": "sha512-maAX1cnBkzIZ89O4tSQUOF098xjGMC8N+9vuY/WfHwg87THw6odD2Br35donlj5e6KnB1SB0QBHhTQhhDHuTPQ==", + "dev": true, + "requires": { + "drange": "1.0.1", + "ret": "0.2.2" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + } + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "readable-stream": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz", + "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dev": true, + "requires": { + "safe-buffer": "5.1.1" + } + } + } + }, + "recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "requires": { + "minimatch": "3.0.4" + } + }, + "redeyed": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-1.0.1.tgz", + "integrity": "sha1-6WwZO0DAgWsArshCaY5hGF5VSYo=", + "dev": true, + "requires": { + "esprima": "3.0.0" + } + }, + "request": { + "version": "2.83.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", + "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", + "dev": true, + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.6", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.3.2", + "har-validator": "5.0.3", + "hawk": "6.0.2", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.18", + "oauth-sign": "0.8.2", + "performance-now": "2.1.0", + "qs": "6.5.1", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.4", + "tunnel-agent": "0.6.0", + "uuid": "3.2.1" + } + }, + "request-promise-core": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", + "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", + "dev": true, + "requires": { + "lodash": "4.17.5" + } + }, + "request-promise-native": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.5.tgz", + "integrity": "sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU=", + "dev": true, + "requires": { + "request-promise-core": "1.1.1", + "stealthy-require": "1.1.1", + "tough-cookie": "2.3.4" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "ret": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "dev": true + }, + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "dev": true + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + }, + "safe-eval": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/safe-eval/-/safe-eval-0.3.0.tgz", + "integrity": "sha1-Bs4RHuvZwYWrr/AI7A/P/Fxb4Aw=", + "dev": true + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "dev": true + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.4.0" + }, + "dependencies": { + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + } + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.2" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dev": true, + "requires": { + "is-arrayish": "0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.1.tgz", + "integrity": "sha1-wt/DhquqDD4zxI2z/ocFnmkGXv0=", + "dev": true + } + } + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "dev": true, + "requires": { + "hoek": "4.2.1" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "0.5.7" + } + }, + "spark-md5": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.0.tgz", + "integrity": "sha1-NyIifFTi+vJLHcbZM8wUTm9xv+8=", + "dev": true + }, + "spdx-correct": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", + "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "dev": true, + "requires": { + "spdx-expression-parse": "3.0.0", + "spdx-license-ids": "3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", + "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "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==", + "dev": true, + "requires": { + "spdx-exceptions": "2.1.0", + "spdx-license-ids": "3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", + "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "dev": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "static-eval": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-0.2.3.tgz", + "integrity": "sha1-Aj8XrJ/uQm6niMEuo5IG3Bdfiyo=", + "dev": true, + "requires": { + "escodegen": "0.0.28" + }, + "dependencies": { + "escodegen": { + "version": "0.0.28", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-0.0.28.tgz", + "integrity": "sha1-Dk/xcV8yh3XWyrUaxEpAbNer/9M=", + "dev": true, + "requires": { + "esprima": "1.0.4", + "estraverse": "1.3.2", + "source-map": "0.5.7" + } + }, + "esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=", + "dev": true + }, + "estraverse": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.3.2.tgz", + "integrity": "sha1-N8K4k+8T1yPydth41g2FNRUqbEI=", + "dev": true + } + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "streamsearch": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", + "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=", + "dev": true + }, + "string": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/string/-/string-3.3.3.tgz", + "integrity": "sha1-XqIRzZLSKOGEKUmQpsyXs2anfLA=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } + } + } + }, + "string.prototype.repeat": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", + "integrity": "sha1-q6Nt4I3O5qWjN9SbLqHaGyj8Ds8=", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "superagent": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.2.tgz", + "integrity": "sha512-gVH4QfYHcY3P0f/BZzavLreHW3T1v7hG9B+hpMQotGQqurOvhv87GcMCd6LWySmBuf+BDR44TQd0aISjVHLeNQ==", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "cookiejar": "2.1.1", + "debug": "3.1.0", + "extend": "3.0.1", + "form-data": "2.3.2", + "formidable": "1.2.0", + "methods": "1.1.2", + "mime": "1.6.0", + "qs": "6.5.1", + "readable-stream": "2.3.5" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "swagger-converter": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/swagger-converter/-/swagger-converter-0.1.7.tgz", + "integrity": "sha1-oJdRnG8e5N1n4wjZtT3cnCslf5c=", + "dev": true, + "requires": { + "lodash.clonedeep": "2.4.1" + } + }, + "swagger-methods": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-1.0.4.tgz", + "integrity": "sha512-xrKFLbrZ6VxRsg+M3uJozJtsEpNI/aPfZsOkoEjXw8vhAqdMIqwTYGj1f4dmUgvJvCdZhV5iArgtqXgs403ltg==", + "dev": true + }, + "swagger-parser": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/swagger-parser/-/swagger-parser-3.4.2.tgz", + "integrity": "sha512-himpIkA50AjTvrgtz0PPbzwWoTjj3F3ye/y1PcW/514YEp1A3IhAcJFkkEu7b1zHnSIthnzxC8aTy+XZG0D+iA==", + "dev": true, + "requires": { + "call-me-maybe": "1.0.1", + "debug": "3.1.0", + "es6-promise": "4.2.4", + "json-schema-ref-parser": "1.4.1", + "ono": "4.0.3", + "swagger-methods": "1.0.4", + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "3.19.1" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "json-schema-ref-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-1.4.1.tgz", + "integrity": "sha1-wMLkOL8HlnI7AkUbrovH3Qs3/tA=", + "dev": true, + "requires": { + "call-me-maybe": "1.0.1", + "debug": "2.6.9", + "es6-promise": "3.3.1", + "js-yaml": "3.11.0", + "ono": "2.2.5" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "dev": true + }, + "ono": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/ono/-/ono-2.2.5.tgz", + "integrity": "sha1-2vCUiLURdNp6fkJ136sxtDj/oOM=", + "dev": true + } + } + } + } + }, + "swagger-schema-official": { + "version": "2.0.0-bab6bed", + "resolved": "https://registry.npmjs.org/swagger-schema-official/-/swagger-schema-official-2.0.0-bab6bed.tgz", + "integrity": "sha1-cAcEaNbSl3ylI3suUZyn0Gouo/0=", + "dev": true + }, + "swagger-tools": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/swagger-tools/-/swagger-tools-0.10.3.tgz", + "integrity": "sha512-2eepnAxniKB/oejo4pz4wGnN9hoXfLzs6ChVluDRCVzu98F7HDSRw0C+DwmiarXD5i1rjXK8yLvUuxQxOOKOJg==", + "dev": true, + "requires": { + "async": "2.6.0", + "body-parser": "1.18.2", + "commander": "2.15.0", + "debug": "3.1.0", + "js-yaml": "3.11.0", + "json-refs": "3.0.4", + "lodash": "4.17.5", + "multer": "1.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "2.2.0", + "qs": "6.5.1", + "serve-static": "1.13.2", + "spark-md5": "3.0.0", + "string": "3.3.3", + "superagent": "3.8.2", + "swagger-converter": "0.1.7", + "traverse": "0.6.6", + "z-schema": "3.19.1" + }, + "dependencies": { + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "dev": true, + "requires": { + "lodash": "4.17.5" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "sway": { + "version": "github:amarzavery/sway#21d2160311380134e31e252a7e1ce1268441c8c3", + "dev": true, + "requires": { + "debug": "3.1.0", + "faker": "4.1.0", + "js-base64": "2.4.3", + "js-yaml": "3.11.0", + "json-refs": "3.0.4", + "json-schema-faker": "0.5.0-rc9", + "lodash": "4.17.5", + "native-promise-only": "0.8.1", + "path-to-regexp": "1.7.0", + "swagger-methods": "1.0.4", + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "3.19.1" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + } + } + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "dev": true, + "requires": { + "punycode": "1.4.1" + } + }, + "traverse": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", + "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", + "dev": true + }, + "tslib": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz", + "integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ==", + "dev": true + }, + "tunnel": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.5.tgz", + "integrity": "sha512-gj5sdqherx4VZKMcBA4vewER7zdK25Td+z1npBqpbDys4eJrLx+SlYjJvq1bDXs2irkuJM5pf8ktaEQVipkrbA==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "5.1.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "optional": true + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.18" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "underscore": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", + "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=", + "dev": true + }, + "universalify": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz", + "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "uri-js": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz", + "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", + "dev": true, + "requires": { + "punycode": "2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", + "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=", + "dev": true + } + } + }, + "urijs": { + "version": "1.18.12", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.18.12.tgz", + "integrity": "sha512-WlvUkocbQ+GYhi8zkcbecbGYq7YLSd2I3InxAfqeh6mWvWalBE7bISDHcAL3J7STrWFfizuJ709srHD+RuABPQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", + "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "dev": true, + "requires": { + "spdx-correct": "3.0.0", + "spdx-expression-parse": "3.0.0" + } + }, + "validator": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/validator/-/validator-9.4.1.tgz", + "integrity": "sha512-YV5KjzvRmSyJ1ee/Dm5UED0G+1L4GZnLN3w6/T+zZm8scVua4sOhYKWTUrKa0H/tMiJyO9QLHMPN+9mB/aMunA==", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } + }, + "viz.js": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/viz.js/-/viz.js-1.8.1.tgz", + "integrity": "sha512-KrSNgnIxec+JCAqDPliO6xYA69ToH2WTYB2Kbt8Bp/XRUvm23rTyfffFi4rvQLFkIRNUz/xCnnqhh/gChhsgGA==", + "dev": true + }, + "vscode-jsonrpc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.3.1.tgz", + "integrity": "sha512-iLlG27498AJF0j4GJ4yua7Z9bpJfLfwpAaAA9mihe6VDoYHwK8TyFgnpXdgjoTb8X9/DnzimQeg0bjIWINvPWw==", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "winston": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.0.tgz", + "integrity": "sha1-gIBQuT1SZh7Z+2wms/DIJnCLCu4=", + "dev": true, + "requires": { + "async": "1.0.0", + "colors": "1.0.3", + "cycle": "1.0.3", + "eyes": "0.1.8", + "isstream": "0.1.2", + "stack-trace": "0.0.10" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "xmldom": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", + "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", + "dev": true + }, + "xpath.js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xpath.js/-/xpath.js-1.1.0.tgz", + "integrity": "sha512-jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==", + "dev": true + }, + "xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yaml-ast-parser": { + "version": "https://github.com/olydis/yaml-ast-parser/releases/download/0.0.34/yaml-ast-parser-0.0.34.tgz", + "integrity": "sha512-vot4C2kw9u2dgbXE6sOMt7t4B+snvgFovW9lJCsIkgXwKycyFdAjsBFuTa8DdmFpXe+mcMxkoHWZX0K4BZbegw==", + "dev": true + }, + "yargs": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", + "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "dev": true, + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + } + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "dev": true, + "requires": { + "camelcase": "4.1.0" + } + }, + "yuml2svg": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/yuml2svg/-/yuml2svg-3.1.0.tgz", + "integrity": "sha512-gTGq+637C+ZdURr9yyjiAKw4JcL15ZvSiifOEtvSQ1cU1FDOlC6P2+bMnlo6mwkSJaATuKwCOjYjvBRVGkA5Rw==", + "dev": true, + "requires": { + "color": "2.0.1", + "viz.js": "1.8.1" + } + }, + "z-schema": { + "version": "3.19.1", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-3.19.1.tgz", + "integrity": "sha512-jPNzqmOu3+AGbb4krDODqo4QBzwUGDVzyfGyy1HtWaUnafltQotatSpxxWd6Mp0iSZOUwHU5sqKYi+U8HsHMkg==", + "dev": true, + "requires": { + "commander": "2.15.0", + "lodash.get": "4.4.2", + "lodash.isequal": "4.5.0", + "validator": "9.4.1" + } + } + } +} diff --git a/package.json b/package.json index 8358ec9850a6..9c1d3a990897 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "json-schema-ref-parser": "^3.1.2", "mocha": "*", "oad": "^0.1.9", - "oav": "^0.4.1", + "oav": "^0.4.34", "request": "^2.61.0", "request-promise-native": "^1.0.5", "z-schema": "^3.16.1" @@ -33,6 +33,6 @@ "url": "http://github.com/azure/azure-rest-api-specs/issues" }, "scripts": { - "test": "mocha -t 500000" + "test": "mocha -t 500000 --reporter min" } } diff --git a/profiles/ResourceSchemas.md b/profiles/ResourceSchemas.md index 7c0b7f6de217..5caaf6137a06 100644 --- a/profiles/ResourceSchemas.md +++ b/profiles/ResourceSchemas.md @@ -106,6 +106,7 @@ batch: - ../specification/datalake-store/resource-manager/Microsoft.DataLakeStore/2016-11-01/account.json - ../specification/datalake-store/resource-manager/Microsoft.DataLakeStore/2016-11-01/filesystem.json - ../specification/datamigration/resource-manager/Microsoft.DataMigration/2017-11-15-preview/datamigration.json + - ../specification/datamigration/resource-manager/Microsoft.DataMigration/2018-03-15-preview/datamigration.json - ../specification/devtestlabs/resource-manager/Microsoft.DevTestLab/2015-05-21-preview/DTL.json - ../specification/devtestlabs/resource-manager/Microsoft.DevTestLab/2016-05-15/DTL.json - ../specification/dns/resource-manager/Microsoft.Network/2015-05-04-preview/dns.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json new file mode 100644 index 000000000000..39ce8d34f987 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json @@ -0,0 +1,674 @@ +{ + "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": "2018-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/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": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/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": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of Policy Contracts.", + "schema": { + "$ref": "#/definitions/PolicyCollection" + } + } + } + } + }, + "/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": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PolicyIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/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" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PolicyIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns the Policy Contracts.", + "schema": { + "$ref": "#/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": "#/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": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/PolicyContract" + }, + "required": true, + "description": "The policy contents to apply." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Global policy configuration was successfully created.", + "schema": { + "$ref": "#/definitions/PolicyContract" + } + }, + "200": { + "description": "Global policy configuration of the Api Management service was successfully updated.", + "schema": { + "$ref": "#/definitions/PolicyContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/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": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PolicyIdParameter" + }, + { + "$ref": "#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the Global level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the Global level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policySnippets": { + "get": { + "tags": [ + "PolicySnippets" + ], + "operationId": "PolicySnippets_ListByService", + "description": "Lists all policy snippets.", + "x-ms-examples": { + "ApiManagementListPolicySnippets": { + "$ref": "./examples/ApiManagementListPolicySnippets.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/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": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of Policy Contracts.", + "schema": { + "$ref": "#/definitions/PolicySnippetsCollection" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/regions": { + "get": { + "tags": [ + "Regions" + ], + "operationId": "Regions_ListByService", + "description": "Lists all azure regions in which the service exists.", + "x-ms-examples": { + "ApiManagementListRegions": { + "$ref": "./examples/ApiManagementListRegions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of Regions in which the service is deployed.", + "schema": { + "$ref": "#/definitions/RegionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "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": { + "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." + }, + "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": "#/definitions/Resource" + } + ], + "description": "Policy Contract details." + }, + "PolicyContractProperties": { + "properties": { + "policyContent": { + "type": "string", + "description": "Json escaped Xml Encoded contents of the Policy." + }, + "contentFormat": { + "type": "string", + "description": "Format of the policyContent.", + "enum": [ + "xml", + "xml-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." + } + ] + }, + "default": "xml" + } + }, + "required": [ + "policyContent" + ], + "description": "Policy contract Properties." + }, + "PolicySnippetsCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicySnippetContract" + }, + "description": "Policy snippet value." + } + }, + "description": "The response of the list policy snippets operation." + }, + "PolicySnippetContract": { + "properties": { + "name": { + "type": "string", + "description": "Snippet name.", + "readOnly": true + }, + "content": { + "type": "string", + "description": "Snippet content.", + "readOnly": true + }, + "toolTip": { + "type": "string", + "description": "Snippet toolTip.", + "readOnly": true + }, + "scope": { + "type": "integer", + "description": "Binary OR value of the Snippet scope.", + "readOnly": true + } + }, + "description": "Policy snippet." + }, + "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": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "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" + }, + "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." + }, + "TopQueryParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to return.", + "minimum": 1, + "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" + }, + "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" + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json new file mode 100644 index 000000000000..9e1dd8b0477d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json @@ -0,0 +1,3614 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/apis": { + "get": { + "tags": [ + "Apis" + ], + "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 | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| serviceUrl | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| path | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "expandApiVersionSet", + "in": "query", + "type": "boolean", + "required": false, + "default": false, + "description": "Include full ApiVersionSet resource in response" + } + ], + "responses": { + "200": { + "description": "Paged Result response of Apis.", + "schema": { + "$ref": "#/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/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}": { + "head": { + "tags": [ + "Apis" + ], + "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": "#/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": [ + "Apis" + ], + "operationId": "Api_Get", + "description": "Gets the details of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiContract": { + "$ref": "./examples/ApiManagementGetApiContract.json" + } + }, + "produces": [ + "application/json", + "application/vnd.sun.wadl+xml", + "application/vnd.swagger.doc+json", + "application/wsdl+xml" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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/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": [ + "Apis" + ], + "operationId": "Api_CreateOrUpdate", + "description": "Creates new or updates existing specified API of the API Management service instance.", + "x-ms-examples": { + "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" + }, + "ApiManagementCreateApiRevision": { + "$ref": "./examples/ApiManagementCreateApiRevision.json" + } + }, + "consumes": [ + "application/json", + "application/vnd.sun.wadl+xml", + "application/vnd.swagger.doc+json", + "application/wsdl+xml" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "API was successfully updated.", + "schema": { + "$ref": "#/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" + } + } + } + }, + "patch": { + "tags": [ + "Apis" + ], + "operationId": "Api_Update", + "description": "Updates the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementUpdateApi.json": { + "$ref": "./examples/ApiManagementUpdateApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Apis" + ], + "operationId": "Api_Delete", + "description": "Deletes the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteApi.json": { + "$ref": "./examples/ApiManagementDeleteApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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": [ + "Revisions" + ], + "operationId": "ApiRevisions_List", + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n\r\n|apiRevision | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of revision details.", + "schema": { + "$ref": "#/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/ApiRevisionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases": { + "get": { + "tags": [ + "Releases" + ], + "operationId": "ApiRelease_List", + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------|------------------------|---------------------------------------------|\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n|notes|ge le eq ne gt lt|substringof contains startswith endswith|" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of API Releases.", + "schema": { + "$ref": "#/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/ApiReleaseContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}": { + "head": { + "tags": [ + "Releases" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/ReleaseIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns the details of an API Release.", + "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": [ + "Releases" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/ReleaseIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns the details of an API Release.", + "schema": { + "$ref": "#/definitions/ApiReleaseContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Releases" + ], + "operationId": "ApiRelease_Create", + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiReleaseContract" + }, + "description": "Create parameters." + } + ], + "responses": { + "201": { + "description": "Release was successfully created.", + "schema": { + "$ref": "#/definitions/ApiReleaseContract" + } + }, + "200": { + "description": "Release was successfully updated.", + "schema": { + "$ref": "#/definitions/ApiReleaseContract" + } + }, + "default": { + "description": "Error response describing why the release failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Releases" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiReleaseContract" + }, + "description": "API Release Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + } + ], + "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": [ + "Releases" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + } + ], + "responses": { + "200": { + "description": "The release was successfully deleted." + }, + "204": { + "description": "The release 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}/operations": { + "get": { + "tags": [ + "Operations" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n| name | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| method | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| urlTemplate | ge, le, eq, ne, gt, lt | substringof, 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 operation summary entities at the API level.", + "schema": { + "$ref": "#/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/OperationContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}": { + "head": { + "tags": [ + "Operations" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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": [ + "Operations" + ], + "operationId": "ApiOperation_Get", + "description": "Gets the details of the API Operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiOperation": { + "$ref": "./examples/ApiManagementGetApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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/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": [ + "Operations" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/OperationContract" + } + }, + "200": { + "description": "Operation was successfully updated.", + "schema": { + "$ref": "#/definitions/OperationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Operations" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Operations" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successfully deleted." + }, + "204": { + "description": "The operation 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}/operations/{operationId}/policies": { + "get": { + "tags": [ + "ApiOperationPolicies" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operations Policy Collection.", + "schema": { + "$ref": "./apimanagement.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": [ + "ApiOperationPolicies" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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": [ + "ApiOperationPolicies" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operation Policy information.", + "schema": { + "$ref": "./apimanagement.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": [ + "ApiOperationPolicies" + ], + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyContract" + }, + "required": true, + "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": "./apimanagement.json#/definitions/PolicyContract" + } + }, + "200": { + "description": "Api Operation policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationPolicies" + ], + "operationId": "ApiOperationPolicy_Delete", + "description": "Deletes the policy configuration at the Api Operation.", + "x-ms-examples": { + "ApiManagementDeleteOperationPolicy": { + "$ref": "./examples/ApiManagementDeleteOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the API Operation level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the API Operation 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}/products": { + "get": { + "tags": [ + "ApiProduct" + ], + "operationId": "ApiProduct_ListByApis", + "description": "Lists all Products, which the API is part of.", + "x-ms-examples": { + "ApiManagementGetProductsForApi": { + "$ref": "./examples/ApiManagementGetProductsForApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------|------------------------|---------------------------------------------|\n| name | 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": "./apimproducts.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": "./apimproducts.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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Policy Collection.", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyCollection" + }, + "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}/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": "#/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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Policy information.", + "schema": { + "$ref": "./apimanagement.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" + } + }, + "consumes": [ + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyContract" + }, + "required": true, + "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": "./apimanagement.json#/definitions/PolicyContract" + } + }, + "200": { + "description": "Api policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyContract" + } + }, + "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": "#/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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Schema Collection.", + "schema": { + "$ref": "#/definitions/SchemaCollection" + }, + "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-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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Schema information.", + "schema": { + "$ref": "#/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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/SchemaIdParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/SchemaContract" + }, + "required": true, + "description": "The schema contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api schema configuration was successfully created.", + "schema": { + "$ref": "#/definitions/SchemaContract" + } + }, + "200": { + "description": "Api schema configuration of the tenant was successfully updated.", + "schema": { + "$ref": "#/definitions/SchemaContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "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": "#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/SchemaIdParameter" + }, + { + "$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}/apisByTags": { + "get": { + "tags": [ + "ApisByTags" + ], + "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| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| aid | 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 | 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 TagResource entities.", + "schema": { + "$ref": "./apimtagresources.json#/definitions/TagResourceCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./apimtagresources.json#/definitions/TagResourceContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics": { + "get": { + "tags": [ + "ApiDiagnostics" + ], + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result reponse of diagnostics for an API.", + "schema": { + "$ref": "./apimdiagnostics.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": "./apimdiagnostics.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "ApiDiagnostics" + ], + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.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": [ + "ApiDiagnostics" + ], + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.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": "./apimdiagnostics.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": [ + "ApiDiagnostics" + ], + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./apimdiagnostics.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": "./apimdiagnostics.json#/definitions/DiagnosticContract" + } + }, + "200": { + "description": "Diagnostic was successfully updated.", + "schema": { + "$ref": "./apimdiagnostics.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiDiagnostics" + ], + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./apimdiagnostics.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": [ + "ApiDiagnostics" + ], + "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": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.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" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}/loggers": { + "get": { + "tags": [ + "ApiDiagnosticLoggers" + ], + "operationId": "ApiDiagnosticLogger_ListByService", + "description": "Lists all loggers assosiated with the specified Diagnostic of an API.", + "x-ms-examples": { + "ApiManagementListApiDiagnosticLoggers": { + "$ref": "./examples/ApiManagementListApiDiagnosticLoggers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| type | eq | |" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result reponse of loggers assigned to the specified Diagnostic.", + "schema": { + "$ref": "./apimloggers.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": "./apimloggers.json#/definitions/LoggerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}/loggers/{loggerid}": { + "head": { + "tags": [ + "ApiDiagnosticLoggers" + ], + "operationId": "ApiDiagnosticLogger_CheckEntityExists", + "description": "Checks that logger entity specified by identifier is associated with the diagnostics entity.", + "x-ms-examples": { + "ApiManagementHeadApiDiagnosticLogger": { + "$ref": "./examples/ApiManagementHeadApiDiagnosticLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" + }, + { + "$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": [ + "ApiDiagnosticLoggers" + ], + "operationId": "ApiDiagnosticLogger_CreateOrUpdate", + "description": "Attaches a logger to a dignostic for an API.", + "x-ms-examples": { + "ApiManagementCreateApiDiagnosticLogger": { + "$ref": "./examples/ApiManagementCreateApiDiagnosticLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Logger was successfully attached to Diagnostic.", + "schema": { + "$ref": "./apimloggers.json#/definitions/LoggerContract" + } + }, + "200": { + "description": "Logger to Diagnostic link was successfully updated.", + "schema": { + "$ref": "./apimloggers.json#/definitions/LoggerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiDiagnosticLoggers" + ], + "operationId": "ApiDiagnosticLogger_Delete", + "description": "Deletes the specified Logger from Diagnostic for an API.", + "x-ms-examples": { + "ApiManagementDeleteApiDiagnosticLogger": { + "$ref": "./examples/ApiManagementDeleteApiDiagnosticLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Logger was successfully detached from Diagnostic." + }, + "204": { + "description": "The Logger was successfully detached from Diagnostic." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "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" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdRevParameter" + }, + { + "name": "format", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "swagger-link", + "wadl-link", + "wsdl-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" + } + ] + }, + "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/ApiExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ApiExportResult": { + "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 Blob Uri." + }, + "ApiCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "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." + }, + "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": { + "contentValue": { + "type": "string", + "description": "Content value when Importing an API." + }, + "contentFormat": { + "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" + ], + "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." + } + ] + } + }, + "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." + }, + "ApiContractProperties": { + "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": 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": { + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "required": [ + "path" + ], + "description": "Api Entity Properties" + }, + "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." + }, + "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.", + "readOnly": true + }, + "isOnline": { + "type": "boolean", + "description": "Indicates if API revision is accessible via the gateway.", + "readOnly": true + }, + "apiVersionSetId": { + "type": "string", + "description": "A resource identifier for the related ApiVersionSet." + } + }, + "description": "API base contract details." + }, + "ApiRevisionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiRevisionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "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" + } + } + }, + "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." + }, + "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`." + } + } + }, + "ApiReleaseCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiReleaseContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Api Revision list representation." + }, + "ApiReleaseContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiReleaseContractProperties", + "description": "Properties of the Api Release Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Release details." + }, + "ApiReleaseContractProperties": { + "description": "API Release details", + "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" + } + } + }, + "AuthenticationSettingsContract": { + "properties": { + "oAuth2": { + "$ref": "#/definitions/OAuth2AuthenticationSettingsContract", + "description": "OAuth2 Authentication settings" + } + }, + "description": "API Authentication Settings." + }, + "OAuth2AuthenticationSettingsContract": { + "properties": { + "authorizationServerId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "scope": { + "type": "string", + "description": "operations scope." + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "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" + }, + "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." + }, + "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." + }, + "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." + }, + "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": "whether parameter is required or not." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Parameter values." + } + }, + "required": [ + "name", + "type" + ], + "description": "Operation parameters details." + }, + "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." + }, + "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." + }, + "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" + } + } + }, + "SchemaCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SchemaContract" + }, + "description": "Api Schema Contract value." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "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)." + }, + "document": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaDocumentProperties", + "description": "Properties of the Schema Document." + } + }, + "required": [ + "contentType" + ], + "description": "Schema contract Properties." + }, + "SchemaDocumentProperties": { + "properties": { + "value": { + "type": "string", + "description": "Json escaped string defining the document representing the Schema." + } + }, + "description": "Schema Document Properties." + } + }, + "parameters": { + "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, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "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" + }, + "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, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "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": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "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": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json new file mode 100644 index 000000000000..0ad2bbfb1346 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json @@ -0,0 +1,682 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/authorizationServers": { + "get": { + "tags": [ + "AuthorizationServers" + ], + "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 | Supported operators | Supported functions |\n|-------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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/AuthorizationServerCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/AuthorizationServerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}": { + "head": { + "tags": [ + "AuthorizationServers" + ], + "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": "#/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": [ + "AuthorizationServers" + ], + "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": "#/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/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": [ + "AuthorizationServers" + ], + "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": "#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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.", + "schema": { + "$ref": "#/definitions/AuthorizationServerContract" + } + }, + "200": { + "description": "Authorization server is already registered.", + "schema": { + "$ref": "#/definitions/AuthorizationServerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AuthorizationServers" + ], + "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": "#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "AuthorizationServers" + ], + "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": "#/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" + } + } + } + } + } + }, + "definitions": { + "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." + }, + "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." + } + }, + "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." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "description": "External OAuth authorization server Update settings contract." + }, + "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" + } + }, + "clientSecret": { + "type": "string", + "description": "Client or app secret registered with this authorization server." + }, + "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." + }, + "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)." + } + }, + "parameters": { + "AuthenticationServerIdParameter": { + "name": "authsid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the authorization server.", + "minLength": 1, + "maxLength": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json new file mode 100644 index 000000000000..10c59fd61c8e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json @@ -0,0 +1,770 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/backends": { + "get": { + "tags": [ + "Backends" + ], + "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 | Supported operators | Supported functions |\n|-------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| host | 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/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/BackendContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendid}": { + "head": { + "tags": [ + "Backends" + ], + "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": "#/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": [ + "Backends" + ], + "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": "#/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/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": [ + "Backends" + ], + "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": "#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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.", + "schema": { + "$ref": "#/definitions/BackendContract" + } + }, + "200": { + "description": "The existing backend was successfully updated.", + "schema": { + "$ref": "#/definitions/BackendContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Backends" + ], + "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": "#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Backends" + ], + "operationId": "Backend_Delete", + "x-ms-examples": { + "ApiManagementDeleteBackend": { + "$ref": "./examples/ApiManagementDeleteBackend.json" + } + }, + "description": "Deletes the specified backend.", + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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": [ + "Backends" + ], + "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": "#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/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": { + "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." + }, + "BackendServiceFabricClusterProperties": { + "properties": { + "clientCertificatethumbprint": { + "description": "The client certificate thumbprint for the management endpoint.", + "type": "string" + }, + "maxPartitionResolutionRetries": { + "description": "Maximum number of retries while attempting resolve the parition.", + "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." + }, + "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." + }, + "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." + }, + "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." + }, + "BackendUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendUpdateParameterProperties", + "description": "Backend entity update contract properties." + } + }, + "description": "Backend update parameters." + }, + "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." + }, + "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 Reconect is PT2M." + } + }, + "description": "Properties to control reconnect requests." + } + }, + "parameters": { + "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, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json new file mode 100644 index 000000000000..e895ee01e226 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json @@ -0,0 +1,401 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "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 | Supported operators | Supported functions |\n|----------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| subject | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| thumbprint | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| expirationDate | ge, le, eq, ne, gt, lt | N/A |" + }, + { + "$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/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/CertificateContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}": { + "head": { + "tags": [ + "Certificates" + ], + "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": "#/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": [ + "Certificates" + ], + "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": "#/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/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": [ + "Certificates" + ], + "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": "#/parameters/CertificateIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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.", + "schema": { + "$ref": "#/definitions/CertificateContract" + } + }, + "200": { + "description": "The certificate details were successfully updated.", + "schema": { + "$ref": "#/definitions/CertificateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "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": "#/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": { + "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." + } + }, + "parameters": { + "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": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json new file mode 100644 index 000000000000..03cb8cbc0ea0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json @@ -0,0 +1,1406 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to manage Azure API Management deployment.", + "version": "2018-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": { + "/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}/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." + } + }, + "x-ms-long-running-operation": true + } + }, + "/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." + } + }, + "x-ms-long-running-operation": true + } + }, + "/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" + } + }, + "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.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + } + }, + "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." + } + }, + "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" + } + }, + "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" + } + } + } + }, + "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." + }, + "204": { + "description": "Service is already deleted." + } + } + } + }, + "/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" + } + } + }, + "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" + } + } + } + } + }, + "/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" + } + } + } + } + }, + "/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" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/updatecertificate": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_UploadCertificate", + "description": "Upload Custom Domain SSL certificate for an API Management service. This operation will be deprecated in future releases.", + "x-ms-examples": { + "ApiManagementServiceUploadProxyCertificate": { + "$ref": "./examples/ApiManagementServiceUploadProxyCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceUploadCertificateParameters" + }, + "description": "Parameters supplied to the Upload SSL certificate for an API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully uploaded certificate to the API Management Service.", + "schema": { + "$ref": "#/definitions/CertificateInformation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/updatehostname": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_UpdateHostname", + "description": "Creates, updates, or deletes the custom hostnames for an API Management service. The custom hostname can be applied to the Proxy and Portal endpoint. This is a long running operation and could take several minutes to complete. This operation will be deprecated in the next version update.", + "x-ms-examples": { + "ApiManagementServiceUpdateHostName": { + "$ref": "./examples/ApiManagementServiceUpdateHostName.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceUpdateHostnameParameters" + }, + "description": "Parameters supplied to the UpdateHostname operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Service was successfully updated with desired hostnames.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted. The location header contains the URL where the status of the long running operation can be checked. The response also includes the unmodified ApiManagementServiceResource.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "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.", + "readOnly": true + } + }, + "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" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": false + } + }, + "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.", + "readOnly": true + } + }, + "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": "Static IP addresses of the location's virtual machines." + }, + "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 + } + }, + "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 + }, + "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. 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. 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 and setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` can be used to disable TLS 1.0 on an API Management service." + }, + "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." + }, + "virtualNetworkType": { + "type": "string", + "description": "The type of VPN in which API Managemet 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." + } + ] + } + } + }, + "description": "Base Properties of an API Management service resource description." + }, + "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" + ], + "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." + } + ] + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity of the SKU (number of deployed units of the SKU). The default value is 1.", + "default": 1 + } + }, + "required": [ + "name" + ], + "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." + }, + "ApiManagementServiceUploadCertificateParameters": { + "properties": { + "type": { + "type": "string", + "description": "Hostname type.", + "enum": [ + "Proxy", + "Portal", + "Management", + "Scm" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": false + } + }, + "certificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificate_password": { + "type": "string", + "description": "Certificate password." + } + }, + "required": [ + "type", + "certificate", + "certificate_password" + ], + "description": "Parameters supplied to the Upload SSL certificate for an API Management service operation." + }, + "ApiManagementServiceIdentity": { + "description": "Identity properties of the Api Management service resource.", + "properties": { + "type": { + "type": "string", + "description": "The identity type. Currently the only supported type is 'SystemAssigned'.", + "enum": [ + "SystemAssigned" + ], + "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." + } + }, + "required": [ + "type" + ] + }, + "HostnameConfigurationOld": { + "properties": { + "type": { + "type": "string", + "description": "Hostname type.", + "enum": [ + "Proxy", + "Portal", + "Management", + "Scm" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": false + } + }, + "hostname": { + "type": "string", + "description": "Hostname to configure." + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "type", + "hostname", + "certificate" + ], + "description": "Custom hostname configuration." + }, + "ApiManagementServiceUpdateHostnameParameters": { + "properties": { + "update": { + "type": "array", + "items": { + "$ref": "#/definitions/HostnameConfigurationOld" + }, + "description": "Hostnames to create or update." + }, + "delete": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Proxy", + "Portal", + "Management", + "Scm" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": false + } + }, + "description": "Hostnames types to delete." + } + }, + "description": "Parameters supplied to the UpdateHostname operation." + }, + "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": {} +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json new file mode 100644 index 000000000000..e1c5eb28a79a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json @@ -0,0 +1,619 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/diagnostics": { + "get": { + "tags": [ + "Diagnostics" + ], + "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" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result reponse of diagnostics.", + "schema": { + "$ref": "#/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/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "Diagnostics" + ], + "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": "#/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": [ + "Diagnostics" + ], + "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": "#/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/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": [ + "Diagnostics" + ], + "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": "#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/DiagnosticContract" + } + }, + "200": { + "description": "Diagnostic was successfully updated.", + "schema": { + "$ref": "#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Diagnostics" + ], + "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": "#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Diagnostics" + ], + "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": "#/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" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}/loggers": { + "get": { + "tags": [ + "DiagnosticLoggers" + ], + "operationId": "DiagnosticLogger_ListByService", + "description": "Lists all loggers assosiated with the specified Diagnostic of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListDiagnosticLoggers": { + "$ref": "./examples/ApiManagementListDiagnosticLoggers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/DiagnosticIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, startswith, endswith |\n| type | eq | |" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result reponse of loggers assigned to the specified Diagnostic.", + "schema": { + "$ref": "./apimloggers.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": "./apimloggers.json#/definitions/LoggerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}/loggers/{loggerid}": { + "head": { + "tags": [ + "DiagnosticLoggers" + ], + "operationId": "DiagnosticLogger_CheckEntityExists", + "description": "Checks that logger entity specified by identifier is associated with the diagnostics entity.", + "x-ms-examples": { + "ApiManagementHeadDiagnosticLogger": { + "$ref": "./examples/ApiManagementHeadDiagnosticLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The logger is associated with the diagnostic entity." + }, + "404": { + "description": "The logger is not associated with the diagnostic entity." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "DiagnosticLoggers" + ], + "operationId": "DiagnosticLogger_CreateOrUpdate", + "description": "Attaches a logger to a dignostic.", + "x-ms-examples": { + "ApiManagementCreateDiagnosticLogger": { + "$ref": "./examples/ApiManagementCreateDiagnosticLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Logger was successfully attached to Diagnostic.", + "schema": { + "$ref": "./apimloggers.json#/definitions/LoggerContract" + } + }, + "200": { + "description": "Logger to Diagnostic link was successfully updated.", + "schema": { + "$ref": "./apimloggers.json#/definitions/LoggerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DiagnosticLoggers" + ], + "operationId": "DiagnosticLogger_Delete", + "description": "Deletes the specified Logger from Diagnostic.", + "x-ms-examples": { + "ApiManagementDeleteDiagnosticLogger": { + "$ref": "./examples/ApiManagementDeleteDiagnosticLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Logger was successfully detached from Diagnostic." + }, + "204": { + "description": "The Logger was successfully detached from Diagnostic." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "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": { + "enabled": { + "type": "boolean", + "description": "Indicates whether a diagnostic should receive data or not." + } + }, + "required": [ + "enabled" + ], + "description": "Diagnostic Entity Properties" + } + }, + "parameters": { + "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": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json new file mode 100644 index 000000000000..6ffa8a5a4a57 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json @@ -0,0 +1,505 @@ +{ + "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": "2018-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/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" + }, + { + "$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/EmailTemplateCollection" + } + } + }, + "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": "#/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": "#/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/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": "#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/EmailTemplateContract" + } + }, + "200": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "#/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": "#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$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": "#/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": { + "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." + }, + "EmailTemplateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateUpdateParameterProperties", + "description": "Email Template Update contract properties." + } + }, + "description": "Email Template update Parameters." + }, + "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." + }, + "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." + } + }, + "parameters": { + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json new file mode 100644 index 000000000000..0e4e9aa54dd2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json @@ -0,0 +1,735 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/groups": { + "get": { + "tags": [ + "Groups" + ], + "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 | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| type | eq, ne | N/A |" + }, + { + "$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/GroupCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}": { + "head": { + "tags": [ + "Groups" + ], + "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": "#/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": [ + "Groups" + ], + "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": "#/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/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": [ + "Groups" + ], + "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": "#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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 succesfully.", + "schema": { + "$ref": "#/definitions/GroupContract" + } + }, + "200": { + "description": "Group already exists.", + "schema": { + "$ref": "#/definitions/GroupContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Groups" + ], + "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": "#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Groups" + ], + "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": "#/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": [ + "GroupUsers" + ], + "operationId": "GroupUser_List", + "description": "Lists a collection of the members of the group, specified by its identifier.", + "x-ms-examples": { + "ApiManagementListGroupUsers": { + "$ref": "./examples/ApiManagementListGroupUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|------------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| firstName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| lastName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| email | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | eq | N/A |\n| registrationDate | ge, le, eq, ne, gt, lt | N/A |\n| note | 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": "./apimusers.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": "./apimusers.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{uid}": { + "head": { + "tags": [ + "GroupUsers" + ], + "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": "#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimusers.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": [ + "GroupUsers" + ], + "operationId": "GroupUser_Create", + "description": "Adds a user to the specified group.", + "x-ms-examples": { + "ApiManagementCreateGroupUser": { + "$ref": "./examples/ApiManagementCreateGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimusers.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": "./apimusers.json#/definitions/UserContract" + } + }, + "200": { + "description": "The specified user is already a member of the specified group.", + "schema": { + "$ref": "./apimusers.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GroupUsers" + ], + "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": "#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimusers.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": { + "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." + } + }, + "parameters": { + "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": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json new file mode 100644 index 000000000000..0297039b15d9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json @@ -0,0 +1,552 @@ +{ + "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": "2018-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/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/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Lists a collection of Identity Providers.", + "schema": { + "$ref": "#/definitions/IdentityProviderList" + } + }, + "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}": { + "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/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "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/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified IdentityProvider entity configuration details.", + "schema": { + "$ref": "#/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": "#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IdentityProviderContract" + }, + "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.", + "schema": { + "$ref": "#/definitions/IdentityProviderContract" + } + }, + "200": { + "description": "The existing Identity Provider was successfully updated.", + "schema": { + "$ref": "#/definitions/IdentityProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "IdentityProviders" + ], + "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": "#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": "#/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" + } + } + } + } + } + }, + "definitions": { + "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": { + "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" + } + ], + "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." + }, + "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": { + "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." + }, + "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." + }, + "allowedTenants": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Allowed Tenants when configuring Azure Active Directory login." + }, + "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." + } + }, + "parameters": { + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json new file mode 100644 index 000000000000..a7be9704d423 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json @@ -0,0 +1,512 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/loggers": { + "get": { + "tags": [ + "Loggers" + ], + "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 | Supported operators | Supported functions |\n|-------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| type | 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 Logger entities.", + "schema": { + "$ref": "#/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/LoggerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerid}": { + "head": { + "tags": [ + "Loggers" + ], + "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": "#/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": [ + "Loggers" + ], + "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": "#/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/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": [ + "Loggers" + ], + "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": "#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/LoggerContract" + } + }, + "200": { + "description": "The existing logger was successfully updated.", + "schema": { + "$ref": "#/definitions/LoggerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Loggers" + ], + "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": "#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Loggers" + ], + "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": "#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$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": { + "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." + } + }, + "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." + } + }, + "parameters": { + "LoggerIdParameter": { + "name": "loggerid", + "in": "path", + "required": true, + "type": "string", + "maxLength": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "description": "Logger identifier. Must be unique in the API Management service instance.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json new file mode 100644 index 000000000000..0a5d95a5ac36 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json @@ -0,0 +1,222 @@ +{ + "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": "2018-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/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": "#/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": { + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json new file mode 100644 index 000000000000..7abf971b664f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json @@ -0,0 +1,771 @@ +{ + "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": "2018-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/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": { + "ApiManagementListNotification": { + "$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/NotificationCollection" + } + } + }, + "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": "#/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/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Notification" + ], + "operationId": "Notification_CreateOrUpdate", + "description": "Updates an Notification.", + "x-ms-examples": { + "ApiManagementGetNotification": { + "$ref": "./examples/ApiManagementGetNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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/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": [ + "Notification" + ], + "operationId": "NotificationRecipientUser_ListByNotification", + "description": "Gets the list of the Notification Recipient User subscribed to the notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientUser": { + "$ref": "./examples/ApiManagementListNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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/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/{uid}": { + "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": "#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimusers.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": { + "ApiManagementCreateRecipientUser": { + "$ref": "./examples/ApiManagementCreateRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimusers.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/RecipientUserContract" + } + }, + "200": { + "description": "Recipient User is already part of the notification list.", + "schema": { + "$ref": "#/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": "#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimusers.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": { + "ApiManagementListNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementListNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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/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": "#/parameters/NotificationNameParameter" + }, + { + "$ref": "#/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": { + "ApiManagementCreateRecipientEmail": { + "$ref": "./examples/ApiManagementCreateRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/NotificationNameParameter" + }, + { + "$ref": "#/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/RecipientEmailContract" + } + }, + "200": { + "description": "Recipient Email is already part of the notification list.", + "schema": { + "$ref": "#/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": "#/parameters/NotificationNameParameter" + }, + { + "$ref": "#/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": { + "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." + }, + "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." + }, + "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." + } + }, + "parameters": { + "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" + }, + "EmailParameter": { + "name": "email", + "in": "path", + "required": true, + "type": "string", + "description": "Email identifier.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json new file mode 100644 index 000000000000..2c2fd499266a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json @@ -0,0 +1,459 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders": { + "get": { + "tags": [ + "OpenIdConnectProviders" + ], + "operationId": "OpenIdConnectProvider_ListByService", + "description": "Lists all 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 | Supported operators | Supported functions |\n|-------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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/OpenIdConnectProviderCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/OpenidConnectProviderContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}": { + "head": { + "tags": [ + "OpenIdConnectProviders" + ], + "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": "#/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": [ + "OpenIdConnectProviders" + ], + "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": "#/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/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": [ + "OpenIdConnectProviders" + ], + "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": "#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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.", + "schema": { + "$ref": "#/definitions/OpenidConnectProviderContract" + } + }, + "200": { + "description": "OpenIdConnect Provider was successfully updated.", + "schema": { + "$ref": "#/definitions/OpenidConnectProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "OpenIdConnectProviders" + ], + "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": "#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "OpenIdConnectProviders" + ], + "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": "#/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" + } + } + } + } + } + }, + "definitions": { + "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": { + "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": { + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + } + }, + "parameters": { + "OpenIdConnectIdParameter": { + "name": "opid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the OpenID Connect Provider.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json new file mode 100644 index 000000000000..c74048fb541e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json @@ -0,0 +1,713 @@ +{ + "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": "2018-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/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.", + "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/PortalSigninSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + } + } + }, + "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/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/PortalSigninSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings was successfully updated.", + "schema": { + "$ref": "#/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.", + "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/PortalSignupSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + } + } + }, + "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/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/PortalSignupSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings was successfully updated.", + "schema": { + "$ref": "#/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.", + "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/PortalDelegationSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + } + } + }, + "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/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/PortalDelegationSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings was successfully updated.", + "schema": { + "$ref": "#/definitions/PortalDelegationSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "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." + }, + "PortalSigninSettingProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Redirect Anonymous users to the Sign-In page." + } + }, + "description": "Sign-in settings contract properties." + }, + "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." + }, + "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." + }, + "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": { + "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." + }, + "SubscriptionsDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for subscriptions." + } + }, + "description": "Subscriptions delegation settings properties." + }, + "RegistrationDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for user registration." + } + }, + "description": "User registration delegation settings properties." + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json new file mode 100644 index 000000000000..c4945c5006b2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json @@ -0,0 +1,1243 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/products": { + "get": { + "tags": [ + "Products" + ], + "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 | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| terms | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | eq | |" + }, + { + "$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." + }, + { + "$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/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/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}": { + "head": { + "tags": [ + "Products" + ], + "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": "#/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": [ + "Products" + ], + "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": "#/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/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": [ + "Products" + ], + "operationId": "Product_CreateOrUpdate", + "description": "Creates or Updates a product.", + "x-ms-examples": { + "ApiManagementCreateProductBasic": { + "$ref": "./examples/ApiManagementCreateProductBasic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/ProductContract" + } + }, + "200": { + "description": "Product was successfully updated.", + "schema": { + "$ref": "#/definitions/ProductContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Products" + ], + "operationId": "Product_Update", + "description": "Update product.", + "x-ms-examples": { + "ApiManagementUpdateProductBasic": { + "$ref": "./examples/ApiManagementUpdateProductBasic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProductUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content in case of Update Successfull." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Products" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete existing subscriptions associated with the product or not." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The product was successfully deleted." + }, + "204": { + "description": "The product 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}/products/{productId}/apis": { + "get": { + "tags": [ + "ProductApis" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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| path | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n" + }, + { + "$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": "./apimapis.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": "./apimapis.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}": { + "head": { + "tags": [ + "ProductApis" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "404": { + "description": "API is not associated with the product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductApis" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the product.", + "schema": { + "$ref": "./apimapis.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the product.", + "schema": { + "$ref": "./apimapis.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductApis" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API was successfully removed from the product." + }, + "204": { + "description": "The API was successfully removed from 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}/groups": { + "get": { + "tags": [ + "ProductGroups" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| type | eq, ne | N/A |" + }, + { + "$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": "./apimgroups.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": "./apimgroups.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}": { + "head": { + "tags": [ + "ProductGroups" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimgroups.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Group is associated with the Product." + }, + "404": { + "description": "The Group entity is not associated with the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductGroups" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimgroups.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": "./apimgroups.json#/definitions/GroupContract" + } + }, + "200": { + "description": "The specified group is already associated with the product.", + "schema": { + "$ref": "./apimgroups.json#/definitions/GroupContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductGroups" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimgroups.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": [ + "ProductSubscriptions" + ], + "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": "#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|--------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| stateComment | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| userId | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| productId | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | 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 subscription entities.", + "schema": { + "$ref": "./apimsubscriptions.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": "./apimsubscriptions.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": { + "ApiManagementListProductPolicy": { + "$ref": "./examples/ApiManagementListProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProductIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyCollection" + }, + "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}/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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + } + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./apimanagement.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": "#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyContract" + }, + "required": true, + "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": "./apimanagement.json#/definitions/PolicyContract" + } + }, + "200": { + "description": "Product policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./apimanagement.json#/definitions/PolicyContract" + } + }, + "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": "#/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" + } + } + } + } + } + }, + "definitions": { + "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" + }, + "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." + } + }, + "parameters": { + "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": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json new file mode 100644 index 000000000000..7b5a088a6b29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Property 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 properties. Each API Management service instance has a properties collection of key/value pairs that are global to the service instance. These properties can be used to manage constant string values across all API configuration and policies.", + "version": "2018-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/Microsoft.ApiManagement/service/{serviceName}/properties": { + "get": { + "tags": [ + "Property" + ], + "operationId": "Property_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-properties" + }, + "x-ms-examples": { + "ApiManagementListProperties": { + "$ref": "./examples/ApiManagementListProperties.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| tags | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith, any, all |\n| name | 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 Property entities for the specified API Management service instance.", + "schema": { + "$ref": "#/definitions/PropertyCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/PropertyContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties/{propId}": { + "head": { + "tags": [ + "Property" + ], + "operationId": "Property_GetEntityTag", + "description": "Gets the entity state (Etag) version of the property specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProperty": { + "$ref": "./examples/ApiManagementHeadProperty.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PropertyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Property 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": [ + "Property" + ], + "operationId": "Property_Get", + "description": "Gets the details of the property specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetProperty": { + "$ref": "./examples/ApiManagementGetProperty.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PropertyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Property entity.", + "schema": { + "$ref": "#/definitions/PropertyContract" + }, + "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": [ + "Property" + ], + "operationId": "Property_CreateOrUpdate", + "description": "Creates or updates a property.", + "x-ms-examples": { + "ApiManagementCreateProperty": { + "$ref": "./examples/ApiManagementCreateProperty.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PropertyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PropertyContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Property was successfully created.", + "schema": { + "$ref": "#/definitions/PropertyContract" + } + }, + "200": { + "description": "Property was successfully updated.", + "schema": { + "$ref": "#/definitions/PropertyContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Property" + ], + "operationId": "Property_Update", + "description": "Updates the specific property.", + "x-ms-examples": { + "ApiManagementUpdateProperty": { + "$ref": "./examples/ApiManagementUpdateProperty.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PropertyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PropertyUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Property was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Property" + ], + "operationId": "Property_Delete", + "description": "Deletes specific property from the the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteProperty": { + "$ref": "./examples/ApiManagementDeleteProperty.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/PropertyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Property was successfully deleted." + }, + "204": { + "description": "Property was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "PropertyCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PropertyContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Property list representation." + }, + "PropertyContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PropertyContractProperties", + "description": "Property entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Property details." + }, + "PropertyContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of Property. 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 property. Can contain policy expressions. It may not be empty or consist only of whitespace.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/PropertyEntityBaseParameters" + } + ], + "required": [ + "displayName", + "value" + ], + "description": "Property Contract properties." + }, + "PropertyUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PropertyUpdateParameterProperties", + "description": "Property entity Update contract properties." + } + }, + "description": "Property update Parameters." + }, + "PropertyUpdateParameterProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of Property. 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 property. Can contain policy expressions. It may not be empty or consist only of whitespace.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/PropertyEntityBaseParameters" + } + ], + "description": "Property Contract properties." + }, + "PropertyEntityBaseParameters": { + "properties": { + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "Optional tags that when provided can be used to filter the property list." + }, + "secret": { + "description": "Determines whether the value is a secret and should be encrypted or not. Default value is false.", + "type": "boolean" + } + }, + "description": "Property Entity Base Parameters set." + } + }, + "parameters": { + "PropertyIdParameter": { + "name": "propId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the property.", + "maxLength": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json new file mode 100644 index 000000000000..1e41a13b0d24 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json @@ -0,0 +1,341 @@ +{ + "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": "2018-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/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": { + "ApiManagementGetQuotaCounteryKeys": { + "$ref": "./examples/ApiManagementGetQuotaCounteryKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of the quota counter values.", + "schema": { + "$ref": "#/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": "#/parameters/QuotaCounterKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": { + "ApiManagementGetQuotaCounteryKeysByQuotaPeriod": { + "$ref": "./examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "#/parameters/QuotaPeriodKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Quota counter details for the specified period.", + "schema": { + "$ref": "#/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": "#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "#/parameters/QuotaPeriodKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": { + "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." + } + }, + "parameters": { + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimreports.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimreports.json new file mode 100644 index 000000000000..da029fd6e13b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimreports.json @@ -0,0 +1,722 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to get the analytics reports associated with your Azure API Management deployment.", + "version": "2018-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/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" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": "The filter to apply on the operation." + }, + { + "$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/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": "The filter to apply on the operation." + }, + { + "$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/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": "The filter to apply on the operation." + }, + { + "$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/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "$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/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "$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/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "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, secconds))" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/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": "The filter to apply on the operation." + }, + { + "$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/RequestReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-odata": "#/definitions/RequestReportRecordContract" + } + } + }, + "definitions": { + "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 agregation 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 succesful 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.Unauthorize 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." + }, + "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 fullfilled 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." + } + }, + "parameters": {} +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json new file mode 100644 index 000000000000..8f60defe345f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json @@ -0,0 +1,706 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/subscriptions": { + "get": { + "tags": [ + "Subscriptions" + ], + "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 | Supported operators | Supported functions |\n|--------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| stateComment | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| userId | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| productId | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | eq | |" + }, + { + "$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/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/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}": { + "head": { + "tags": [ + "Subscriptions" + ], + "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": "#/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": [ + "Subscriptions" + ], + "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": "#/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/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": [ + "Subscriptions" + ], + "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": "#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SubscriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "#/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.", + "schema": { + "$ref": "#/definitions/SubscriptionContract" + } + }, + "200": { + "description": "The user already subscribed to the product.", + "schema": { + "$ref": "#/definitions/SubscriptionContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscription_Update", + "description": "Updates the details of a subscription specificied by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateSubscription": { + "$ref": "./examples/ApiManagementUpdateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SubscriptionUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "#/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": [ + "Subscriptions" + ], + "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": "#/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": [ + "Subscriptions" + ], + "operationId": "Subscription_RegeneratePrimaryKey", + "description": "Regenerates primary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegenerateKey": { + "$ref": "./examples/ApiManagementSubscriptionRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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": [ + "Subscriptions" + ], + "operationId": "Subscription_RegenerateSecondaryKey", + "description": "Regenerates secondary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegenerateKey": { + "$ref": "./examples/ApiManagementSubscriptionRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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" + } + } + } + } + } + }, + "definitions": { + "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": { + "userId": { + "type": "string", + "description": "The user resource identifier of the subscription owner. The value is a valid relative URL in the format of /users/{uid} where {uid} is a user identifier." + }, + "productId": { + "type": "string", + "description": "The product resource identifier of the subscribed product. The value is a valid relative URL in the format of /products/{productId} where {productId} is a product identifier." + }, + "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": { + "type": "string", + "description": "Subscription primary key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Subscription secondary key.", + "minLength": 1, + "maxLength": 256 + }, + "stateComment": { + "type": "string", + "description": "Optional subscription comment added by an administrator." + } + }, + "required": [ + "userId", + "productId", + "state", + "primaryKey", + "secondaryKey" + ], + "description": "Subscription details." + }, + "SubscriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionCreateParameterProperties", + "description": "Subscription contract properties." + } + }, + "description": "Subscription create details." + }, + "SubscriptionCreateParameterProperties": { + "properties": { + "userId": { + "type": "string", + "description": "User (user id path) for whom subscription is being created in form /users/{uid}" + }, + "productId": { + "type": "string", + "description": "Product (product id path) for which subscription is being created in form /products/{productid}" + }, + "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 + } + } + }, + "required": [ + "userId", + "productId", + "displayName" + ], + "description": "Parameters supplied to the Create subscription operation." + }, + "SubscriptionUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionUpdateParameterProperties", + "description": "Subscription Update contract properties." + } + }, + "description": "Subscription update details." + }, + "SubscriptionUpdateParameterProperties": { + "properties": { + "userId": { + "type": "string", + "description": "User identifier path: /users/{uid}" + }, + "productId": { + "type": "string", + "description": "Product identifier path: /products/{productId}" + }, + "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." + } + }, + "description": "Parameters supplied to the Update subscription operation." + } + }, + "parameters": { + "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": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json new file mode 100644 index 000000000000..b659290eebc6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json @@ -0,0 +1,270 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for queuering APIs. Operations and Products by tags in your Azure API Management deployment.", + "version": "2018-01-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": [ + "TagResources" + ], + "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 | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| aid | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| apiName | 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| method | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| urlTemplate | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| terms | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| isCurrent | 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 TagResource entities.", + "schema": { + "$ref": "#/definitions/TagResourceCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/TagResourceContract" + } + } + }, + "definitions": { + "TagResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagResourceContract" + }, + "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 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" + }, + "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": "./apimapis.json#/definitions/ApiEntityBaseContract" + } + ], + "description": "API contract properties for the Tag Resources." + }, + "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": "./apimproducts.json#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "name" + ], + "description": "Product profile." + }, + "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." + } + }, + "parameters": {} +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtags.json new file mode 100644 index 000000000000..0315b8ef4f7f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtags.json @@ -0,0 +1,1645 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/tags": { + "get": { + "tags": [ + "Tags" + ], + "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 | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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 Tag entities.", + "schema": { + "$ref": "#/definitions/TagCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}": { + "head": { + "tags": [ + "Tags" + ], + "operationId": "Tag_GetEntityState", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetTag": { + "$ref": "./examples/ApiManagementHeadTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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": [ + "Tags" + ], + "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": "#/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/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": [ + "Tags" + ], + "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": "#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagCreateUpdateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was created succesfully.", + "schema": { + "$ref": "#/definitions/TagContract" + } + }, + "200": { + "description": "Tag already exists.", + "schema": { + "$ref": "#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Tags" + ], + "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": "#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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": [ + "Tags" + ], + "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": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The tag was successfully deleted." + }, + "204": { + "description": "The tag 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}/tags": { + "get": { + "tags": [ + "ApiTags" + ], + "operationId": "Tag_ListByApi", + "description": "Lists all Tags associated with the API.", + "x-ms-examples": { + "ApiManagementGetTagsForApi": { + "$ref": "./examples/ApiManagementGetTagsForApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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/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/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiTags" + ], + "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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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": [ + "ApiTags" + ], + "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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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/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": [ + "ApiTags" + ], + "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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Api.", + "schema": { + "$ref": "#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Api.", + "schema": { + "$ref": "#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTags" + ], + "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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully detached the tag from the Api." + }, + "204": { + "description": "Successfully detached the tag from the Api." + }, + "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": [ + "ApiTagDescriptions" + ], + "operationId": "TagDescription_ListByApi", + "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": { + "ApiManagementGetTagDescriptionsForApi": { + "$ref": "./examples/ApiManagementGetTagDescriptionsForApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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/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/TagDescriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagId}": { + "head": { + "tags": [ + "ApiTagDescriptions" + ], + "operationId": "TagDescription_GetEntityState", + "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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/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": [ + "ApiTagDescriptions" + ], + "operationId": "TagDescription_Get", + "description": "Get tag associated with the API.", + "x-ms-examples": { + "ApiManagementGetApiTagDescription": { + "$ref": "./examples/ApiManagementGetApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$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/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": [ + "ApiTagDescriptions" + ], + "operationId": "TagDescription_CreateOrUpdate", + "description": "Create/Update tag fescription 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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/TagDescriptionContract" + } + }, + "200": { + "description": "Tag Description was updated for the Api.", + "schema": { + "$ref": "#/definitions/TagDescriptionContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTagDescriptions" + ], + "operationId": "TagDescription_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": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted tag description for the Api." + }, + "204": { + "description": "Successfully deleted tag description for the Api." + }, + "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": [ + "OperationTags" + ], + "operationId": "Tag_ListByOperation", + "description": "Lists all Tags associated with the Operation.", + "x-ms-examples": { + "ApiManagementGetTagsForOperation": { + "$ref": "./examples/ApiManagementGetTagsForOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimapis.json#/parameters/OperationIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| method | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| urlTemplate | 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/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/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}": { + "head": { + "tags": [ + "OperationTags" + ], + "operationId": "Tag_GetEntityStateByOperation", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadOperationTag": { + "$ref": "./examples/ApiManagementHeadOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimapis.json#/parameters/OperationIdParameter" + }, + { + "$ref": "#/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": [ + "OperationTags" + ], + "operationId": "Tag_GetByOperation", + "description": "Get tag associated with the Operation.", + "x-ms-examples": { + "ApiManagementGetOperationTag": { + "$ref": "./examples/ApiManagementGetOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimapis.json#/parameters/OperationIdParameter" + }, + { + "$ref": "#/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/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": [ + "OperationTags" + ], + "operationId": "Tag_AssignToOperation", + "description": "Assign tag to the Operation.", + "x-ms-examples": { + "ApiManagementCreateOperationTag": { + "$ref": "./examples/ApiManagementCreateOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimapis.json#/parameters/OperationIdParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Operation.", + "schema": { + "$ref": "#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Operation.", + "schema": { + "$ref": "#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "OperationTags" + ], + "operationId": "Tag_DetachFromOperation", + "description": "Detach the tag from the Operation.", + "x-ms-examples": { + "ApiManagementDeleteOperationTag": { + "$ref": "./examples/ApiManagementDeleteOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimapis.json#/parameters/OperationIdParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully detached the tag from the Operation." + }, + "204": { + "description": "Successfully detached the tag from the 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}/operationsByTags": { + "get": { + "tags": [ + "OperationsByTags" + ], + "operationId": "Operation_ListByTags", + "description": "Lists a collection of operations associated with tags.", + "x-ms-examples": { + "ApiManagementListOperationsByTags": { + "$ref": "./examples/ApiManagementListOperationsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimapis.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| apiName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| method | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| urlTemplate | 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 TagResource entities.", + "schema": { + "$ref": "./apimtagresources.json#/definitions/TagResourceCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./apimtagresources.json#/definitions/TagResourceContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags": { + "get": { + "tags": [ + "ProductTags" + ], + "operationId": "Tag_ListByProduct", + "description": "Lists all Tags associated with the Product.", + "x-ms-examples": { + "ApiManagementGetTagsForProduct": { + "$ref": "./examples/ApiManagementGetTagsForProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimproducts.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | 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": "./apimtags.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": "./apimtags.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}": { + "head": { + "tags": [ + "ProductTags" + ], + "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": "./apimproducts.json#/parameters/ProductIdParameter" + }, + { + "$ref": "#/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": [ + "ProductTags" + ], + "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": "./apimproducts.json#/parameters/ProductIdParameter" + }, + { + "$ref": "#/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": "./apimtags.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": [ + "ProductTags" + ], + "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": "./apimproducts.json#/parameters/ProductIdParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Product.", + "schema": { + "$ref": "./apimtags.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Product.", + "schema": { + "$ref": "./apimtags.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductTags" + ], + "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": "./apimproducts.json#/parameters/ProductIdParameter" + }, + { + "$ref": "#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$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": { + "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." + }, + "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": { + "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." + }, + "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." + } + }, + "parameters": { + "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": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json new file mode 100644 index 000000000000..e4c1d7bca08a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json @@ -0,0 +1,772 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}": { + "get": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Get", + "description": "Get tenant access information details.", + "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": "#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + } + } + }, + "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/AccessInformationUpdateParameters" + }, + "description": "Parameters supplied to retrieve the Tenant Access Information." + }, + { + "$ref": "#/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": "#/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": "#/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": { + "get": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_Get", + "description": "Gets the Git access configuration for the tenant.", + "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": "#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "#/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": "#/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": "#/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/{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/DeployConfigurationParameters" + }, + "description": "Deploy Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/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 appplying changes from Git branch to database.", + "schema": { + "$ref": "#/definitions/OperationResultContract" + } + }, + "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/{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/SaveConfigurationParameter" + }, + "description": "Save Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/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/OperationResultContract" + } + }, + "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/{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/DeployConfigurationParameters" + }, + "description": "Validate Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/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/OperationResultContract" + } + }, + "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/{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": "#/parameters/ConfigurationParameter" + } + ], + "responses": { + "200": { + "description": "Sync state result.", + "schema": { + "$ref": "#/definitions/TenantConfigurationSyncStateContract" + } + } + } + } + } + }, + "definitions": { + "AccessInformationContract": { + "properties": { + "id": { + "type": "string", + "description": "Identifier." + }, + "primaryKey": { + "type": "string", + "description": "Primary access key." + }, + "secondaryKey": { + "type": "string", + "description": "Secondary access key." + }, + "enabled": { + "type": "boolean", + "description": "Tenant access information of the API Management service." + } + }, + "description": "Tenant access information contract of the API Management service." + }, + "AccessInformationUpdateParameters": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Tenant access information of the API Management service." + } + }, + "description": "Tenant access information update parameters of the API Management service." + }, + "DeployConfigurationParameters": { + "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." + }, + "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/ErrorResponse", + "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." + }, + "SaveConfigurationParameter": { + "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." + }, + "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." + } + }, + "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" + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimusers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimusers.json new file mode 100644 index 000000000000..e52d1a35cfde --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimusers.json @@ -0,0 +1,961 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/users": { + "get": { + "tags": [ + "Users" + ], + "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 | Supported operators | Supported functions |\n|------------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| firstName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| lastName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| email | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | eq | N/A |\n| registrationDate | ge, le, eq, ne, gt, lt | N/A |\n| note | 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.", + "schema": { + "$ref": "#/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/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{uid}": { + "head": { + "tags": [ + "Users" + ], + "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": "#/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": [ + "Users" + ], + "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": "#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified user entity.", + "schema": { + "$ref": "#/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": [ + "Users" + ], + "operationId": "User_CreateOrUpdate", + "description": "Creates or Updates a user.", + "x-ms-examples": { + "ApiManagementCreateUserBasic": { + "$ref": "./examples/ApiManagementCreateUserBasic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/UserContract" + } + }, + "200": { + "description": "User was successfully updated.", + "schema": { + "$ref": "#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Users" + ], + "operationId": "User_Update", + "description": "Updates the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateUserBasic": { + "$ref": "./examples/ApiManagementUpdateUserBasic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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 Responses: ***\n\n * 405 Administrator user cannot be modified\n\n * 4XX Error response giving details why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Users" + ], + "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": "#/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/{uid}/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": { + "ApiManagementUsersGenerateSsoUrl": { + "$ref": "./examples/ApiManagementUsersGenerateSsoUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/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/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/{uid}/groups": { + "get": { + "tags": [ + "UserGroups" + ], + "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": "#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| description | 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": "./apimgroups.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": "./apimgroups.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{uid}/subscriptions": { + "get": { + "tags": [ + "UserSubscriptions" + ], + "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": "#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|--------------|------------------------|---------------------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| stateComment | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| userId | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| productId | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | 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 Subscription entities.", + "schema": { + "$ref": "./apimsubscriptions.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": "./apimsubscriptions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{uid}/identities": { + "get": { + "tags": [ + "UserIdentities" + ], + "operationId": "UserIdentities_List", + "description": "Lists all user identities.", + "x-ms-examples": { + "ApiManagementListUsersIdentities": { + "$ref": "./examples/ApiManagementListUsersIdentities.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Lists of User Identities.", + "schema": { + "$ref": "#/definitions/UserIdentityCollection" + } + }, + "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/{uid}/token": { + "post": { + "tags": [ + "Users" + ], + "operationId": "User_GetSharedAccessToken", + "description": "Gets the Shared Access Authorization Token for the User.", + "x-ms-examples": { + "ApiManagementUsersGetToken": { + "$ref": "./examples/ApiManagementUsersGetToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/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/UserTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "GenerateSsoUrlResult": { + "properties": { + "value": { + "type": "string", + "description": "Redirect Url containing the SSO URL value." + } + }, + "description": "Generate SSO Url operations response details." + }, + "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": "./apimgroups.json#/definitions/GroupContractProperties" + }, + "description": "Collection of groups user is part of." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "User profile." + }, + "UserCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserCreateParameterProperties", + "description": "User entity create contract properties." + } + }, + "description": "User create details." + }, + "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." + }, + "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." + }, + "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": { + "readOnly": true, + "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": { + "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." + } + }, + "parameters": { + "UserIdParameter": { + "name": "uid", + "in": "path", + "required": true, + "type": "string", + "description": "User identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json new file mode 100644 index 000000000000..0631a85c9fe8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json @@ -0,0 +1,520 @@ +{ + "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": "2018-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/Microsoft.ApiManagement/service/{serviceName}/api-version-sets": { + "get": { + "tags": [ + "ApiVersionSets" + ], + "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" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|------------------|------------------------|-----------------------------------|\n| id | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| firstName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| lastName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| email | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state | eq | N/A |\n| registrationDate | ge, le, eq, ne, gt, lt | N/A |\n| note | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Api Version Set entities.", + "schema": { + "$ref": "#/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/ApiVersionSetContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/api-version-sets/{versionSetId}": { + "head": { + "tags": [ + "ApiVersionSets" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionSetIdParameter" + } + ], + "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": [ + "ApiVersionSets" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionSetIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified Api Version Set entity.", + "schema": { + "$ref": "#/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": [ + "ApiVersionSets" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiVersionSetContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + } + ], + "responses": { + "200": { + "description": "Api Version Set was successfully updated.", + "schema": { + "$ref": "#/definitions/ApiVersionSetContract" + } + }, + "201": { + "description": "Api Version Set was successfully created.", + "schema": { + "$ref": "#/definitions/ApiVersionSetContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiVersionSets" + ], + "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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiVersionSetUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + } + ], + "responses": { + "204": { + "description": "The Api Version Set details were successfully updated." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 4XX Error response giving details 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/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + } + ], + "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": { + "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." + }, + "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" + }, + "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." + }, + "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." + }, + "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." + }, + "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." + } + }, + "parameters": { + "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": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json new file mode 100644 index 000000000000..db6923df1ed8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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=2018-01-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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementBackendReconnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementBackendReconnect.json new file mode 100644 index 000000000000..0919d31f0a51 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementBackendReconnect.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "backendid": "proxybackend", + "parameters": { + "properties": { + "after" : "PT3S" + } + } + }, + "responses": { + "202": {} + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAILogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAILogger.json new file mode 100644 index 000000000000..5cd1ff07cba4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAILogger.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApi.json new file mode 100644 index 000000000000..79f391068c57 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApi.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json new file mode 100644 index 000000000000..016886fe7c9c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "default", + "properties": { + "enabled": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "default", + "properties": { + "enabled": true + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json new file mode 100644 index 000000000000..a6b7d515edfc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "loggerid": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default/loggers/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics/loggers", + "name": "applicationinsights", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default/loggers/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics/loggers", + "name": "applicationinsights", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + } + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperation.json new file mode 100644 index 000000000000..8f73ff5d6346 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperation.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "PetStoreTemplate2", + "operationId":"newoperations", + "parameters": { + "name": "newoperation", + "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": [] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json new file mode 100644 index 000000000000..2cae66c70fb0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "operationId": "5600b57e7e8880006a080001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "contentFormat": "xml", + "policyContent": " " + } + } + }, + "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": { + "policyContent": "\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": { + "policyContent": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicy.json new file mode 100644 index 000000000000..13a0921fe4b5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicy.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match":"*", + "parameters": { + "properties": { + "contentFormat": "xml", + "policyContent": " " + } + } + }, + "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": { + "policyContent": "\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": { + "policyContent": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRelease.json new file mode 100644 index 000000000000..12bf5273a2cc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRelease.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRevision.json new file mode 100644 index 000000000000..92edb681e566 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRevision.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "5a838fd48f33670ed070d77c;rev=4", + "parameters": { + "properties": { + "displayName": "Swagger Petstore V2", + "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/v4", + "path": "petstore2", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": false + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a838fd48f33670ed070d77c;rev=4", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a838fd48f33670ed070d77c;rev=4", + "properties": { + "displayName": "Swagger Petstore 2", + "apiRevision": "4", + "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/v4", + "path": "petstore2", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a838fd48f33670ed070d77c;rev=4", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a838fd48f33670ed070d77c;rev=4", + "properties": { + "displayName": "Swagger Petstore 2", + "apiRevision": "4", + "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/v4", + "path": "petstore2", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiSchema.json new file mode 100644 index 000000000000..a3769dcf6be9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiSchema.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "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" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTag.json new file mode 100644 index 000000000000..853c99adb1e1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTagDescription.json new file mode 100644 index 000000000000..661eb100e408 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTagDescription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagId": "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/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1", + "description": null, + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1", + "description": null, + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json new file mode 100644 index 000000000000..6a2e73dc68fb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "contentFormat": "swagger-link-json", + "contentValue": "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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json new file mode 100644 index 000000000000..5da5b5f5d31d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "contentFormat": "wadl-link-json", + "contentValue": "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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiVersionSet.json new file mode 100644 index 000000000000..26799a04e930 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiVersionSet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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/api-version-sets/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/api-version-sets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json new file mode 100644 index 000000000000..23ff11d1d90a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "clientSecret": "2", + "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", + "clientSecret": "2", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json new file mode 100644 index 000000000000..13249c076945 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json new file mode 100644 index 000000000000..1efb701e38eb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackup.json new file mode 100644 index 000000000000..36e3f0ebc376 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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=2018-01-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" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateCertificate.json new file mode 100644 index 000000000000..a02b02462e60 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateCertificate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnostic.json new file mode 100644 index 000000000000..8df0ffe2af21 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnostic.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "default", + "properties": { + "enabled": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "default", + "properties": { + "enabled": true + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json new file mode 100644 index 000000000000..677358721a45 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "loggerid": "applicationinsights", + "parameters": { } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default/loggers/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics/loggers", + "name": "applicationinsights", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default/loggers/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics/loggers", + "name": "applicationinsights", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + } + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEHLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEHLogger.json new file mode 100644 index 000000000000..ff84cf1e0118 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEHLogger.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEmailTemplate.json new file mode 100644 index 000000000000..2864c5acea1e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEmailTemplate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroup.json new file mode 100644 index 000000000000..86d1962fbde5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupExternal.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupExternal.json new file mode 100644 index 000000000000..b3c2ade5f936 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupExternal.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupUser.json new file mode 100644 index 000000000000..39fab4b7f593 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupUser.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "uid": "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": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateIdentityProvider.json new file mode 100644 index 000000000000..505e8ca54c65 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateIdentityProvider.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "clientSecret": "facebookapplicationsecret", + "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", + "clientSecret": "facebookapplicationsecret", + "type": "facebook" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json new file mode 100644 index 000000000000..8160466ad97d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json @@ -0,0 +1,290 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "parameters": { + "location": "Central US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/westUsVirtualNetwork/subnets/apimSubnet" + } + } + ], + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "proxyhostname1.contoso.com", + "encodedCertificate": "************Base 64 Encoded Pfx Certificate************************", + "certificatePassword": "**************Password of the Certificate************************************************" + }, + { + "type": "Proxy", + "hostName": "proxyhostname2.contoso.com", + "encodedCertificate": "************Base 64 Encoded Pfx Certificate************************", + "certificatePassword": "**************Password of the Certificate************************************************", + "negotiateClientCertificate": true + }, + { + "type": "Portal", + "hostName": "portalhostname1.contoso.com", + "encodedCertificate": "************Base 64 Encoded Pfx Certificate************************", + "certificatePassword": "**************Password of the Certificate************************************************" + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/centralUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2018-01-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Central US", + "etag": "AAAAAAAXXpw=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2017-05-30T18:06:23.0096164Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "proxyhostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxyhostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxyhostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxyhostname2.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portalhostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=portalhostname1.contoso.com" + } + } + ], + "publicIPAddresses": [], + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/westUsVirtualNetwork/subnets/apimSubnet" + } + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/centralUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Central US", + "etag": "AAAAAAAXXwI=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-30T19:00:47.1121713Z", + "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": [ + { + "type": "Proxy", + "hostName": "proxyhostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxyhostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxyhostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxyhostname2.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portalhostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=portalhostname1.contoso.com" + } + } + ], + "publicIPAddresses": [ + "52.xxx.xxx.207" + ], + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "104.210.41.234" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/westUsVirtualNetwork/subnets/apimSubnet" + } + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/centralUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Central US", + "etag": "AAAAAAAXXwI=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-30T19:00:47.1121713Z", + "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": [ + { + "type": "Proxy", + "hostName": "proxyhostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxyhostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxyhostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxyhostname2.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portalhostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=portalhostname1.contoso.com" + } + } + ], + "publicIPAddresses": [ + "52.xxx.xxx.207" + ], + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "104.210.41.234" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/westUsVirtualNetwork/subnets/apimSubnet" + } + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/centralUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json new file mode 100644 index 000000000000..35a818ce1633 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "parameters": { + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + }, + "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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOperationTag.json new file mode 100644 index 000000000000..250b29dd6d87 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOperationTag.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreatePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreatePolicy.json new file mode 100644 index 000000000000..1c309641f58f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreatePolicy.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "policyId": "policy", + "parameters": { + "properties": { + "contentFormat": "xml", + "policyContent": "\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": { + "policyContent": "\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": { + "policyContent": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductApi.json new file mode 100644 index 000000000000..ffd6634aef6e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductApi.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductBasic.json new file mode 100644 index 000000000000..11cd248c852c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductBasic.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductGroup.json new file mode 100644 index 000000000000..72f47886ac53 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductPolicy.json new file mode 100644 index 000000000000..642e89902e2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductPolicy.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "5702e97e5157a50f48dce801", + "policyId": "policy", + "parameters": { + "properties": { + "contentFormat": "xml", + "policyContent": "\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": { + "policyContent": "\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": { + "policyContent": "\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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductTag.json new file mode 100644 index 000000000000..a906213ebb04 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProperty.json new file mode 100644 index 000000000000..060e0c035487 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProperty.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "propId": "testprop2", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/properties/testprop2", + "type": "Microsoft.ApiManagement/service/properties", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": true + } + } + }, + "200": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/properties/testprop2", + "type": "Microsoft.ApiManagement/service/properties", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": true + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientEmail.json new file mode 100644 index 000000000000..711b2de23a4b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientEmail.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientUser.json new file mode 100644 index 000000000000..973e9c679e1a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientUser.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "uid": "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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateService.json new file mode 100644 index 000000000000..4a2fa14eaec9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateService.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "parameters": { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2018-01-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/testdemo", + "name": "testdemo", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAcyE0=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2018-01-18T05:24:31.3459297Z", + "hostnameConfigurations": [], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "location": "West US", + "etag": "AAAAAAAcof0=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2018-01-18T05:24:31.3459297Z", + "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": [ + "207.xx.155.24" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "location": "West US", + "etag": "AAAAAAAcof0=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2018-01-18T05:24:31.3459297Z", + "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": [ + "207.xx.155.24" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json new file mode 100644 index 000000000000..37f349524608 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "parameters": { + "location": "Japan East", + "properties": { + "publisherEmail": "admin@contoso.com", + "publisherName": "Contoso" + }, + "sku": { + "name": "Developer" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2018-01-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "location": "Japan East", + "etag": "AAAAAAC268k=", + "properties": { + "publisherEmail": "admin@contoso.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2017-10-27T23:41:41.7231779Z" + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "f4b0f1c2-xxxx-43db-xxxx-ccd99e1afd22", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Japan East", + "etag": "AAAAAAC268s=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-10-28T01:52:02.4307221Z", + "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", + "publicIPAddresses": [ + "xx.xx.250.222" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "f4b0f1c2-xxxx-43db-xxxx-ccd99e1afd22", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Japan East", + "etag": "AAAAAAC268s=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-10-28T01:52:02.4307221Z", + "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", + "publicIPAddresses": [ + "xx.xx.250.222" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "f4b0f1c2-xxxx-43db-xxxx-ccd99e1afd22", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json new file mode 100644 index 000000000000..9a44a23e1085 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "contentFormat": "wsdl-link", + "contentValue": "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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json new file mode 100644 index 000000000000..478084f6cb6c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "contentFormat": "wsdl-link", + "contentValue": "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 + } + } + }, + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSubscription.json new file mode 100644 index 000000000000..2d3ac5b98d8e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "sid": "testsub", + "parameters": { + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "productId": "/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": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "productId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z", + "primaryKey": "06c34e1a9d394412b292e0611e73d417", + "secondaryKey": "1e756a7705364c529e8d1760190f47b3" + } + } + }, + "200": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "productId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z", + "primaryKey": "06c34e1a9d394412b292e0611e73d417", + "secondaryKey": "1e756a7705364c529e8d1760190f47b3" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateTag.json new file mode 100644 index 000000000000..004f1910892c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateTag.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateUserBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateUserBasic.json new file mode 100644 index 000000000000..94e3116e47c0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateUserBasic.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApi.json new file mode 100644 index 000000000000..07c6b192f293 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApi.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json new file mode 100644 index 000000000000..730724b7042f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200":{} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json new file mode 100644 index 000000000000..e8d961cb79f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "loggerid": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { } + }, + "responses": { + "204": {}, + "200":{} + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiOperation.json new file mode 100644 index 000000000000..83118c82ddf0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiOperation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiPolicy.json new file mode 100644 index 000000000000..cc25df790b77 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "loggerId", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiRelease.json new file mode 100644 index 000000000000..7259f4c30e84 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiRelease.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "5a5fcc09124a7fa9b89f2f1d", + "releaseId": "testrev", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiSchema.json new file mode 100644 index 000000000000..46ac78c46747 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiSchema.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "schemaId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTag.json new file mode 100644 index 000000000000..f458e7db34cc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json new file mode 100644 index 000000000000..f458e7db34cc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json new file mode 100644 index 000000000000..3830bc95003e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "versionSetId": "a1", + "If-Match": "*" + }, + "responses": { + "204": { + }, + "200":{ + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json new file mode 100644 index 000000000000..2160255fc3b6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "authsid": "newauthServer2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteBackend.json new file mode 100644 index 000000000000..128009de4032 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteBackend.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "backendid": "sfbackend", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteCertificate.json new file mode 100644 index 000000000000..a6bffbb09ae4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "certificateId": "tempcert", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnostic.json new file mode 100644 index 000000000000..eaed7f8f24a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnostic.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json new file mode 100644 index 000000000000..32872a14c3d4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "loggerid": "applicationinsights", + "parameters": { } + }, + "responses": { + "200": {}, + "204": {} + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json new file mode 100644 index 000000000000..6027ff992175 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroup.json new file mode 100644 index 000000000000..fc5abc938862 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroup.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "groupId": "aadGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroupUser.json new file mode 100644 index 000000000000..6c95ea25fe0e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroupUser.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "groupId": "templategroup", + "uid": "59307d350af58404d8a26300", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json new file mode 100644 index 000000000000..42362fe4cab4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "identityProviderName": "aad", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteLogger.json new file mode 100644 index 000000000000..f2d5e63ae052 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteLogger.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "loggerid": "loggerId", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json new file mode 100644 index 000000000000..ba36c31f4286 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json new file mode 100644 index 000000000000..75f246b2e261 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "uid": "576823d0a40f7e74ec07d642" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json new file mode 100644 index 000000000000..4df2e30c4583 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json new file mode 100644 index 000000000000..b58ad23969b2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "testapi", + "operationId": "testoperation", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationTag.json new file mode 100644 index 000000000000..42d7e2baa3c3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "operationId": "59d5b28d1f7fab116c282651", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeletePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeletePolicy.json new file mode 100644 index 000000000000..42c234daefbe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeletePolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProduct.json new file mode 100644 index 000000000000..cba3774a6e40 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProduct.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "testproduct", + "deleteSubscriptions": true, + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductApi.json new file mode 100644 index 000000000000..b98d0098115d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductGroup.json new file mode 100644 index 000000000000..df346737ed1a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductPolicy.json new file mode 100644 index 000000000000..fcef1f5a5bb3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "testproduct", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductTag.json new file mode 100644 index 000000000000..19c1ab315129 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProperty.json new file mode 100644 index 000000000000..9531fd829061 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProperty.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "propId": "testprop2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteSubscription.json new file mode 100644 index 000000000000..32c8c3d09ef3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteSubscription.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteTag.json new file mode 100644 index 000000000000..6d499a895fb2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteTag.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "tagId": "tagId1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteUser.json new file mode 100644 index 000000000000..7c9063e67027 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "5931a75ae4bbd512288c680b", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiContract.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiContract.json new file mode 100644 index 000000000000..0cf5585c5ecf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiContract.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiDiagnostic.json new file mode 100644 index 000000000000..cb6b69c83e2a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiDiagnostic.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "default", + "properties": { + "enabled": false + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json new file mode 100644 index 000000000000..8ffcafe09e03 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "format": "swagger-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "link": "https://apimgmtstaobxxxxxxx.blob.core.windows.net/api-export/Echo API.json?sv=2015-07-08&sr=b&sig=xxxxxxxxxx%3D&se=2017-09-08T21:54:08Z&sp=r" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperation.json new file mode 100644 index 000000000000..99c1dd9c6474 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperation.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": [] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json new file mode 100644 index 000000000000..a8b46901fd99 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiPolicy.json new file mode 100644 index 000000000000..29eda86d080b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRelease.json new file mode 100644 index 000000000000..23b64034be13 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRelease.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiSchema.json new file mode 100644 index 000000000000..2dee8293659f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiSchema.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTag.json new file mode 100644 index 000000000000..42048288953c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTagDescription.json new file mode 100644 index 000000000000..b034067cc150 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTagDescription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "description": null, + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiVersionSet.json new file mode 100644 index 000000000000..4c05217967bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiVersionSet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName" : "Version Set 1", + "versioningScheme" : "Segment", + "description" : "Version configuration" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetAuthorizationServer.json new file mode 100644 index 000000000000..6cccabde4e68 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetAuthorizationServer.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "clientSecret": "2", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetBackend.json new file mode 100644 index 000000000000..2f4c22bea1c5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetBackend.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetCertificate.json new file mode 100644 index 000000000000..fdbbfe8a6957 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetCertificate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetDiagnostic.json new file mode 100644 index 000000000000..f2cc18cd6c09 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetDiagnostic.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "default", + "properties": { + "enabled": false + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetEmailTemplate.json new file mode 100644 index 000000000000..4938dbb5ea21 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetEmailTemplate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetGroup.json new file mode 100644 index 000000000000..62559e461aca --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetIdentityProvider.json new file mode 100644 index 000000000000..0a6412a82465 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetIdentityProvider.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "315c8e2b-29fc-413d-822f-4efab7f43c42", + "clientSecret": "SnE4laLjmxc2QKWTPoRxOiwvSnnwMCFN+jLYDpBCUXw=", + "type": "aadB2C", + "allowedTenants": [ + "samirtestbc.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_Signup_Default", + "signinPolicyName": "B2C_1_signup-policy" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetLogger.json new file mode 100644 index 000000000000..617befa4e7b6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetLogger.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetNotification.json new file mode 100644 index 000000000000..1fc327eec957 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + ] + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json new file mode 100644 index 000000000000..8ddbfdcf9820 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "clientSecret": "oidsecretproviderTemplate2" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOperationTag.json new file mode 100644 index 000000000000..698e1e318e4d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOperationTag.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetPolicy.json new file mode 100644 index 000000000000..1ba7069482bc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetPolicy.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProduct.json new file mode 100644 index 000000000000..58ab34beea63 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProduct.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductPolicy.json new file mode 100644 index 000000000000..e8503eb78783 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductTag.json new file mode 100644 index 000000000000..734fed94cf8b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductsForApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductsForApi.json new file mode 100644 index 000000000000..8238ff8154ac --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductsForApi.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProperty.json new file mode 100644 index 000000000000..a249e0994de7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProperty.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "propId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/properties/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/properties", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json new file mode 100644 index 000000000000..729d39e216b9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + ], + "count": 1, + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json new file mode 100644 index 000000000000..81f936a30663 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByApi.json new file mode 100644 index 000000000000..81bb1b87ea13 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByApi.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByGeo.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByGeo.json new file mode 100644 index 000000000000..062395dcdd91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByGeo.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + ], + "count": 1, + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByOperation.json new file mode 100644 index 000000000000..79db8f6f35f4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByOperation.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByProduct.json new file mode 100644 index 000000000000..0cf949750189 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByProduct.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByRequest.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByRequest.json new file mode 100644 index 000000000000..c191dde45d37 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByRequest.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsBySubscription.json new file mode 100644 index 000000000000..8407fbb10ebd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsBySubscription.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByTime.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByTime.json new file mode 100644 index 000000000000..6f0dc0d3bd84 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByTime.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByUser.json new file mode 100644 index 000000000000..9a4495f8e602 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByUser.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetSubscription.json new file mode 100644 index 000000000000..fd7471610238 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetSubscription.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "productId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z", + "primaryKey": "6de0a3b2da204e459148d2f6785873f0", + "secondaryKey": "c6de00b451f64ea780db1eb8dcf30b62" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTag.json new file mode 100644 index 000000000000..6e0eda3a5f16 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTag.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json new file mode 100644 index 000000000000..18663e4ad24c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForApi.json new file mode 100644 index 000000000000..28ea7a82071c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForApi.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForOperation.json new file mode 100644 index 000000000000..f37dfa372b0f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForOperation.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForProduct.json new file mode 100644 index 000000000000..80c2fec9dff2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForProduct.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTenantAccess.json new file mode 100644 index 000000000000..1fc84f10f2c3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTenantAccess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "primaryKey": "qr5nbjNoZkgtLojXgU+OA/ntYMgko3XPSVyt+ObwR1sqp2ZkM9tGhwxkeEz7bfAuPS5ss61b2S3ZrZmqa9v3Mw==", + "secondaryKey": "2dCJv1CasJl286SZiKxyBFDiIYCUdbwM1YrFNDcFMXCjCKbFzomrGkv+exAbnV5E3DEk91VP4jbeJ2eV/qtejA==", + "enabled": true + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetUser.json new file mode 100644 index 000000000000..5f3bbb3fdd2c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetUser.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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": "*************" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApi.json new file mode 100644 index 000000000000..fbe46b3e71b4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApi.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json new file mode 100644 index 000000000000..29e473b960a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json new file mode 100644 index 000000000000..283755755b0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "loggerid": "templateLogger", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "204": { + }, + "404":{} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperation.json new file mode 100644 index 000000000000..ae40079487dd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperation.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json new file mode 100644 index 000000000000..d17d35e83bc0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiPolicy.json new file mode 100644 index 000000000000..9e5d86a9b0d9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiRelease.json new file mode 100644 index 000000000000..fb089733d64f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiRelease.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiSchema.json new file mode 100644 index 000000000000..092f8caba01c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiSchema.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTag.json new file mode 100644 index 000000000000..42c82ff487bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTagDescription.json new file mode 100644 index 000000000000..42c82ff487bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTagDescription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiVersionSet.json new file mode 100644 index 000000000000..3f302bc8368d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiVersionSet.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json new file mode 100644 index 000000000000..a6eb6687e908 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadBackend.json new file mode 100644 index 000000000000..8111abd64088 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadBackend.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "backendid": "sfbackend" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadCertificate.json new file mode 100644 index 000000000000..82fd5f24bbee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadCertificate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDelegationSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDelegationSettings.json new file mode 100644 index 000000000000..8e2d0d439c79 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDelegationSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnostic.json new file mode 100644 index 000000000000..59d870d9f94f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnostic.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json new file mode 100644 index 000000000000..700d742ff3d9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "loggerid": "templateLogger" + }, + "responses": { + "204": { + }, + "404":{ + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadEmailTemplate.json new file mode 100644 index 000000000000..a2eb9e1e19ec --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadEmailTemplate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroup.json new file mode 100644 index 000000000000..c8bd1072724b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroupUser.json new file mode 100644 index 000000000000..feaef80c1d04 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroupUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9", + "uid": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "204": {}, + "404": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadIdentityProvider.json new file mode 100644 index 000000000000..c431c3e40a64 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadLogger.json new file mode 100644 index 000000000000..bf09183c1cf2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "loggerid": "templateLogger" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json new file mode 100644 index 000000000000..e82babd50d7c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "204": {}, + "404": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json new file mode 100644 index 000000000000..ed404b6405e9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "uid": "576823d0a40f7e74ec07d642" + }, + "responses": { + "204": {}, + "404": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json new file mode 100644 index 000000000000..720c2b85cb14 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOperationTag.json new file mode 100644 index 000000000000..2d2760d9950e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOperationTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadPolicy.json new file mode 100644 index 000000000000..5498eea90289 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProduct.json new file mode 100644 index 000000000000..791ca38ad9b5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProduct.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductApi.json new file mode 100644 index 000000000000..6e1ad8480883 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductApi.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "apiId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {}, + "404": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductGroup.json new file mode 100644 index 000000000000..712f223518db --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductGroup.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {}, + "404": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductPolicy.json new file mode 100644 index 000000000000..be6c967f62b4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "unlimited", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductTag.json new file mode 100644 index 000000000000..e1ef1239e44f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "59306a29e4bbd510dc24e5f8", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProperty.json new file mode 100644 index 000000000000..3bf748a66af3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProperty.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "propId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignInSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignInSettings.json new file mode 100644 index 000000000000..8e2d0d439c79 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignInSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignUpSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignUpSettings.json new file mode 100644 index 000000000000..8e2d0d439c79 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignUpSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSubscription.json new file mode 100644 index 000000000000..cad0874466b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSubscription.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadTag.json new file mode 100644 index 000000000000..253eb0ec2f12 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadUser.json new file mode 100644 index 000000000000..da1fe70f223a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadUser.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json new file mode 100644 index 000000000000..a9affe58c112 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default/loggers/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics/loggers", + "name": "applicationinsights", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnostics.json new file mode 100644 index 000000000000..64b5338b32f6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnostics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/default", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "default", + "properties": { + "enabled": false + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperationPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperationPolicies.json new file mode 100644 index 000000000000..c2148c258c3a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperationPolicies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperations.json new file mode 100644 index 000000000000..f4c0d29fb65b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperations.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiPolicies.json new file mode 100644 index 000000000000..57882d075bbd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiReleases.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiReleases.json new file mode 100644 index 000000000000..11ce08617eab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiReleases.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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/preview/2018-01-01/examples/ApiManagementListApiRevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiRevisions.json new file mode 100644 index 000000000000..e1f60d02c82b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiRevisions.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiSchemas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiSchemas.json new file mode 100644 index 000000000000..175fa41caae3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiSchemas.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiVersionSets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiVersionSets.json new file mode 100644 index 000000000000..1ed88d480671 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiVersionSets.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/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/api-version-sets/vs2", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs2", + "properties": { + "displayName": "api set 2", + "versioningScheme": "Query", + "description": "Version configuration 2" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApis.json new file mode 100644 index 000000000000..6bf81a916e82 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApis.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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/api-version-sets/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/api-version-sets/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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApisByTags.json new file mode 100644 index 000000000000..539c817345c8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApisByTags.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + ], + "count": 1 + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListAuthorizationServers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListAuthorizationServers.json new file mode 100644 index 000000000000..32f6682b2be1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListAuthorizationServers.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "clientSecret": "2", + "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", + "clientSecret": "2", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListBackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListBackends.json new file mode 100644 index 000000000000..5e9ba93cc8e9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListBackends.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListCertificates.json new file mode 100644 index 000000000000..8b264123c44d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListCertificates.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json new file mode 100644 index 000000000000..c49255fb4fc6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default/loggers/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics/loggers", + "name": "applicationinsights", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnostics.json new file mode 100644 index 000000000000..f462342409c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnostics.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/default", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "default", + "properties": { + "enabled": false + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListEmailTemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListEmailTemplates.json new file mode 100644 index 000000000000..3207eeada154 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListEmailTemplates.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroupUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroupUsers.json new file mode 100644 index 000000000000..3d592beca464 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroupUsers.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroups.json new file mode 100644 index 000000000000..84c27d333707 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroups.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIdentityProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIdentityProviders.json new file mode 100644 index 000000000000..51a9f3db0022 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIdentityProviders.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "clientSecret": "googlesecret", + "type": "google" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Aad", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Aad", + "properties": { + "clientId": "aadapplicationid", + "clientSecret": "aadapplicationkey", + "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", + "clientSecret": "aadb2cClientKey", + "type": "aadB2C", + "allowedTenants": [ + "samirtestbc.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_Signup_Default", + "signinPolicyName": "B2C_1_Signin_Default" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListLoggers.json new file mode 100644 index 000000000000..7a3846f7d5de --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListLoggers.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-01-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 + } + }, + { + "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 + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json new file mode 100644 index 000000000000..5faa07c30d79 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json new file mode 100644 index 000000000000..4ca3db0b0d61 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotifications.json new file mode 100644 index 000000000000..c48bb872c37e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotifications.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json new file mode 100644 index 000000000000..3958f9e37cdb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-01-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", + "clientSecret": "oidsecretproviderTemplate2" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperations.json new file mode 100644 index 000000000000..f52496d14fed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperations.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2018-01-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" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperationsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperationsByTags.json new file mode 100644 index 000000000000..d175cf77fc79 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperationsByTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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." + } + } + ], + "count": 1 + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicies.json new file mode 100644 index 000000000000..e69962a7f906 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicies.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicySnippets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicySnippets.json new file mode 100644 index 000000000000..8d1a9176e8b4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicySnippets.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "scope":"Api" + }, + "responses": { + "200": { + "body": [ + { + "name": "Authenticate with Basic", + "content": "", + "toolTip": "Authenticate with the backend service using Basic authentication. Use in the inbound section at API scope.", + "scope": 268435471 + } + ] + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductApis.json new file mode 100644 index 000000000000..1033fcc757b5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductGroups.json new file mode 100644 index 000000000000..26a134dd913e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductGroups.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductPolicy.json new file mode 100644 index 000000000000..0934eb5f21da --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductPolicy.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "policyContent": "\r\n \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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductSubscriptions.json new file mode 100644 index 000000000000..90cbe9be32fd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductSubscriptions.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "productId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002", + "state": "active", + "createdDate": "2015-09-22T01:57:18.723Z", + "primaryKey": "ba95768e868648848e215f0290eec023", + "secondaryKey": "140f866def81419b9bb9732d05d24535" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProducts.json new file mode 100644 index 000000000000..3970d938f8a2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProducts.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProperties.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProperties.json new file mode 100644 index 000000000000..c212734e64ca --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProperties.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/properties/592f1174cc83890dc4f32686", + "type": "Microsoft.ApiManagement/service/properties", + "name": "592f1174cc83890dc4f32686", + "properties": { + "displayName": "Logger-Credentials-592f1174cc83890dc4f32687", + "value": "Endpoint=sb://testtemplatetesteh.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=...", + "secret": true + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/properties/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/properties", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListRegions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListRegions.json new file mode 100644 index 000000000000..ff9f4d6a1585 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListRegions.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "West US", + "isMasterRegion": true, + "isDeleted": false + } + ], + "count": 1, + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscription.json new file mode 100644 index 000000000000..e47bdd7b5281 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscription.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "api-version": "2018-01-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 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json new file mode 100644 index 000000000000..93d441a7fe4c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "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/rg1/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW4U=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "MS", + "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", + "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 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListSubscriptions.json new file mode 100644 index 000000000000..18bc02f746d7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListSubscriptions.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "productId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "state": "active", + "createdDate": "2015-09-22T01:57:40.3Z", + "primaryKey": "a24782fc06f648cbb1c3406c41dc9a3a", + "secondaryKey": "b366198986614a7497a5a68fae19119d" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/56eaed3dbaf08b06e46d27fe", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "56eaed3dbaf08b06e46d27fe", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "productId": "/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", + "primaryKey": "77708695e79a495bb99b95f32adfa1f0", + "secondaryKey": "12e2e4ba857e420b88450dc8fe2a6cf9" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "productId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z", + "primaryKey": "6de0a3b2da204e459148d2f6785873f0", + "secondaryKey": "c6de00b451f64ea780db1eb8dcf30b62" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTagResources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTagResources.json new file mode 100644 index 000000000000..3f0de3338034 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTagResources.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + ], + "count": 3 + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTags.json new file mode 100644 index 000000000000..31c9a1091476 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserGroups.json new file mode 100644 index 000000000000..759acc9d9e37 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserGroups.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserSubscriptions.json new file mode 100644 index 000000000000..0a6bd06366ec --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserSubscriptions.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "productId": "/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", + "primaryKey": "57681850a40f7eb6c49f6ae4", + "secondaryKey": "bbd884a96b3c41b49f34422dac74b345" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6b2b", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6b2b", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "productId": "/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", + "primaryKey": "57681850a40f7eb6c49f6b2c", + "secondaryKey": "125f565d276647dc825d7f25ea40ee57" + } + } + ], + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsers.json new file mode 100644 index 000000000000..0a2eba2fd34f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsers.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-01-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": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsersIdentities.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsersIdentities.json new file mode 100644 index 000000000000..3fbd9bb6a648 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsersIdentities.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "57f2af53bb17172280f44057" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "provider": "Microsoft", + "id": "086cf9********55ab" + } + ], + "count": 1, + "nextLink": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json new file mode 100644 index 000000000000..b4decdcdaf60 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json new file mode 100644 index 000000000000..a38bcb01748b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json new file mode 100644 index 000000000000..6112aa83e05b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json new file mode 100644 index 000000000000..c1e1bac8fea9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json new file mode 100644 index 000000000000..bbc2e03f6994 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json new file mode 100644 index 000000000000..c084783d0d95 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "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 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json new file mode 100644 index 000000000000..50e070bfac62 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json new file mode 100644 index 000000000000..f94ebc6fb5af --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json new file mode 100644 index 000000000000..99fd0ae11700 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementRestoreService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementRestoreService.json new file mode 100644 index 000000000000..f180ac71b7a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementRestoreService.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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=2018-01-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" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json new file mode 100644 index 000000000000..c5a9b02dd6a6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "parameters": { + "name" : "apimService1" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Valid", + "message": "" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceDeleteService.json new file mode 100644 index 000000000000..a9c35c7e215d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceDeleteService.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json new file mode 100644 index 000000000000..3390543e35cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "locationName": "East Asia" + }, + "responses": { + "200": { + "body": [ + { + "location": "Central US", + "networkStatus": { + "dnsServers": [ + "10.20.37.126", + "10.20.244.38" + ], + "connectivityStatus": [ + { + "name": "ap********.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:35.1518379Z", + "lastStatusChange": "2017-06-28T23:17:34.9009011Z" + }, + { + "name": "ap********.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:35.9161347Z", + "lastStatusChange": "2017-06-28T23:17:35.2579713Z" + }, + { + "name": "e*****.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:35.2130114Z", + "lastStatusChange": "2017-06-28T23:17:35.0079651Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:37.4401208Z", + "lastStatusChange": "2017-06-28T23:27:36.8198739Z" + } + ] + } + }, + { + "location": "West US", + "networkStatus": { + "dnsServers": [ + "10.64.3.87", + "10.64.5.29", + "10.20.32.105" + ], + "connectivityStatus": [ + { + "name": "ap********.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:07.1803004Z", + "lastStatusChange": "2017-06-28T23:17:06.4831818Z" + }, + { + "name": "bb******.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:05.9303015Z", + "lastStatusChange": "2017-06-28T23:17:05.7332755Z" + }, + { + "name": "e******.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-28T23:37:07.1178113Z", + "lastStatusChange": "2017-06-28T23:17:06.1237965Z" + } + ] + } + } + ] + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json new file mode 100644 index 000000000000..adc34b627fdb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "locationName": "East Asia" + }, + "responses": { + "200": { + "body": { + "dnsServers": [ + "10.20.32.69", + "10.20.237.143" + ], + "connectivityStatus": [ + { + "name": "apimgmtstxaleb7*******.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-01T23:13:07.9054516Z", + "lastStatusChange": "2017-04-13T19:39:53.5543347Z" + }, + { + "name": "apimgmtstxaleb7*******.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-01T23:13:08.1242042Z", + "lastStatusChange": "2017-04-13T19:39:53.7262408Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2017-06-01T23:08:22.9140197Z", + "lastStatusChange": "2017-05-27T17:52:41.3592337Z" + }, + { + "name": "****seqi.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2017-06-01T23:13:08.0617078Z", + "lastStatusChange": "2017-04-13T19:39:53.5543347Z" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetService.json new file mode 100644 index 000000000000..a60eb0411a01 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetService.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Central US", + "etag": "AAAAAAAYP5M=", + "properties": { + "publisherEmail": "contoso@microsoft.com", + "publisherName": "admin", + "notificationSenderEmail": "contoso@live.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-28T23:01:33.0667959Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-centralus-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": [ + { + "type": "Proxy", + "hostName": "proxyhostname4.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=*.contoso.net" + } + }, + { + "type": "Proxy", + "hostName": "proxyhostname9.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=*.contoso.net" + } + }, + { + "type": "Portal", + "hostName": "portalhostname2.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=*.contoso.net" + } + } + ], + "publicIPAddresses": [ + "52.173.22.222" + ], + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "40.78.99.244" + ], + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net" + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json new file mode 100644 index 000000000000..bea2e0dd5eb8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": "AAAAAAC2jkE=", + "properties": { + "publisherEmail": "admin@contoso.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "createdAtUtc": "2017-10-13T16:56:47.0174063Z", + "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": [ + { + "type": "Proxy", + "hostName": "foobar.msitesting.net", + "keyVaultId": "https://constoso-msi-keyvault.vault.azure.net/secrets/msitestingCert", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E98XXX52CAXXXXXXX2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "13.xx.76.xxx" + ] + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "ae7d906a-xxx-408a-xxxx-6b9d60e5756b", + "tenantId": "72f988bf-xxx-41af-xxxx-2d7cd011db47" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetSsoToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetSsoToken.json new file mode 100644 index 000000000000..49e0e4d4af79 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetSsoToken.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "redirectUri": "https://apimService1.portal.azure-api.net:443/signin-sso?token=1%26201705301929%26eIkr3%2fnfaLs1GVJ0OVbzkJjAcwPFkEZAPM8VUXvXPf7cJ6lWsB9oUwsk2zln9x0KLkn21txCPJWWheSPq7SNeA%3d%3d" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUpdateHostName.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUpdateHostName.json new file mode 100644 index 000000000000..22fa05eb51e9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUpdateHostName.json @@ -0,0 +1,183 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "parameters": { + "update": [ + { + "type": "Proxy", + "hostname": "internalproxy2.contoso.com", + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.com" + } + }, + { + "type": "Portal", + "hostname": "internalportal2.contoso.com", + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.com" + } + }, + { + "type": "Management", + "hostname": "internalmgmt2.contoso.com", + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.com" + } + }, + { + "type": "Scm", + "hostname": "internalscm2.contoso.com", + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.com" + } + } + ] + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2016-10-10" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Central US", + "etag": "AAAAAAAYP5M=", + "properties": { + "publisherEmail": "contoso@microsoft.com", + "publisherName": "admin", + "notificationSenderEmail": "contoso@live.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-28T23:01:33.0667959Z", + "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", + "publicIPAddresses": [ + "52.173.22.222" + ], + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "40.78.99.244" + ] + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "Central US", + "etag": "AAAAAAAYP5M=", + "properties": { + "publisherEmail": "contoso@microsoft.com", + "publisherName": "admin", + "notificationSenderEmail": "contoso@live.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-28T23:01:33.0667959Z", + "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": [ + { + "type": "Proxy", + "hostName": "internalproxy2.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.net" + } + }, + { + "type": "Portal", + "hostName": "internalportal2.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.net" + } + }, + { + "type": "Management", + "hostName": "internalmgmt2.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.net" + } + }, + { + "type": "Scm", + "hostName": "internalscm2.contoso.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "subject": "CN=*.contoso.net" + } + } + ], + "publicIPAddresses": [ + "52.173.22.222" + ], + "additionalLocations": [ + { + "location": "West US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "40.78.99.244" + ] + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json new file mode 100644 index 000000000000..0f9f2081dad8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "parameters": { + "type" : "Proxy", + "certificate" : "MIIZ7wI************************************************************", + "certificate_password": "******" + } + }, + "responses": { + "200": { + "body": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B************************", + "subject": "CN=*.contoso.com" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json new file mode 100644 index 000000000000..4359afaf60b2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json new file mode 100644 index 000000000000..9fc7399ee88a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessSyncState.json new file mode 100644 index 000000000000..52c2d5fa7d85 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessSyncState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json new file mode 100644 index 000000000000..f8db76f18e68 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "branch": "master" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af4ae2a6d2e0b688d7517?api-version=2018-01-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'" + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationSave.json new file mode 100644 index 000000000000..2278ccf03106 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationSave.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "branch": "master" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af57d2a6d2e0b688d751b?api-version=2018-01-01" + } + }, + "200": { + "body": { + "id": "5a1af57d2a6d2e0b688d751b", + "status": "Succeeded", + "started": "2017-11-26T17:10:21.957Z", + "updated": "2017-11-26T17:10:36.06Z", + "resultInfo": "The configuration was successfully saved to master as commit cdb6878db80159cc0e9a53f5ad38581883882974.", + "actionLog": [] + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json new file mode 100644 index 000000000000..ca881f2c013e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "branch": "master" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af64e2a6d2e0b688d751e?api-version=2018-01-01" + } + }, + "200": { + "body": { + "id": "5a1af64e2a6d2e0b688d751e", + "status": "Succeeded", + "started": "2017-11-26T17:13:50.787Z", + "updated": "2017-11-26T17:13:59.723Z", + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApi.json new file mode 100644 index 000000000000..32b3c2e34570 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApi.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Echo API New", + "serviceUrl": "http://echoapi.cloudapp.net/api2", + "path": "newecho" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json new file mode 100644 index 000000000000..30a9d4679717 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": false + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiOperation.json new file mode 100644 index 000000000000..51f0f482e3eb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiOperation.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiRelease.json new file mode 100644 index 000000000000..9d0e8d6acbc8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiRelease.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json new file mode 100644 index 000000000000..621f0e6483d6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "versionSetId": "api1", + "If-Match":"*", + "parameters": { + "properties": { + "displayName" : "api set 1", + "versioningScheme" : "Segment", + "description" : "Version configuration" + } + } + }, + "responses": { + "204": { } + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json new file mode 100644 index 000000000000..626b98229c99 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "authsid": "newauthServer", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "update", + "clientSecret": "updated" + } + } + }, + "responses": { + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateBackend.json new file mode 100644 index 000000000000..99b0b26bca75 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateBackend.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "backendid": "proxybackend", + "If-Match": "*", + "parameters": { + "properties": { + "description": "description5308", + "tls": { + "validateCertificateChain": false, + "validateCertificateName": true + } + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateDiagnostic.json new file mode 100644 index 000000000000..4b7b782fb929 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateDiagnostic.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "diagnosticId": "default", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": false + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json new file mode 100644 index 000000000000..ac797dbd8431 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateGroup.json new file mode 100644 index 000000000000..830d73bbb2b2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json new file mode 100644 index 000000000000..0584a4766b89 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "updatedfacebookid", + "clientSecret": "updatedfacebooksecret" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateLogger.json new file mode 100644 index 000000000000..d39fb2296656 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateLogger.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json new file mode 100644 index 000000000000..73d23a18f1ce --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2", + "If-Match": "*", + "parameters": { + "properties": { + "clientSecret": "updatedsecret" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProductBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProductBasic.json new file mode 100644 index 000000000000..2e8197e44fa0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProductBasic.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "productId": "testproduct", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProperty.json new file mode 100644 index 000000000000..43fe6b5a9d4e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProperty.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "propId": "testprop2", + "If-Match": "*", + "parameters": { + "properties": { + "tags": [ + "foo", + "bar2" + ], + "secret": true + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json new file mode 100644 index 000000000000..08c50fec433a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "parameters": { + "callsCount": 0, + "kbTransferred": 2.5630078125 + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json new file mode 100644 index 000000000000..de387825c5a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S", + "parameters": { + "callsCount": 0, + "kbTransferred": 0 + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json new file mode 100644 index 000000000000..54ccdf4da4b3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "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 + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json new file mode 100644 index 000000000000..2a7f05eb4393 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-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": { + "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 + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateSubscription.json new file mode 100644 index 000000000000..eeba75da4cd7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateSubscription.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "testsub" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTag.json new file mode 100644 index 000000000000..fb9f7ef010f5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "tagId": "temptag", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp tag" + } + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTenantAccess.json new file mode 100644 index 000000000000..ff6301c8e2cc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTenantAccess.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "If-Match": "*", + "accessName": "access", + "parameters": { + "enabled": true + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateUserBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateUserBasic.json new file mode 100644 index 000000000000..4bf2247efc12 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateUserBasic.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com" + } + } + }, + "responses": { + "204": { } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json new file mode 100644 index 000000000000..fc895622f524 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "57127d485157a511ace86ae7" + }, + "responses": { + "200": { + "body": { + "value": "https://apimService1.portal.azure-api.net/signin-sso?token=57127d485157a511ace86ae7%26201706051624%267VY18MlwAom***********2bYr2bDQHg21OzQsNakExQ%3d%3d" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGetToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGetToken.json new file mode 100644 index 000000000000..8a324cf21686 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGetToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "uid": "57f2af53bb17172280f44057", + "parameters": { + "keyType": "primary", + "expiry": "2017-05-13T10:39:35Z" + } + }, + "responses": { + "200": { + "body": { + "value": "57f2af53bb17172280f44057&201705131039&***************************/tJVExvjA==" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimdeployment.json index eb4c3adf9032..b23c3b81a225 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimdeployment.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimdeployment.json @@ -395,7 +395,7 @@ ], "operationId": "ApiManagementServices_List", "description": "Lists all API Management services within an Azure subscription.", - "parameters": [ + "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, @@ -524,7 +524,7 @@ "schema": { "$ref": "#/definitions/ErrorResponse" } - } + } } } }, @@ -631,7 +631,7 @@ "certificate" ], "description": "Custom hostname configuration." - }, + }, "VirtualNetworkConfiguration": { "properties": { "vnetid": { @@ -663,7 +663,7 @@ }, "skuType": { "type": "string", - "description": "The SKU type in the location.", + "description": "The SKU type in the location.", "enum": [ "Developer", "Standard", @@ -814,7 +814,7 @@ "runtimeUrl": { "type": "string", "description": "Proxy endpoint URL of the API Management service.", - "readOnly": true + "readOnly": true }, "portalUrl": { "type": "string", @@ -852,7 +852,7 @@ }, "vpnconfiguration": { "$ref": "#/definitions/VirtualNetworkConfiguration", - "description": "Virtual network configuration of the API Management service." + "description": "Virtual network configuration of the API Management service." }, "additionalLocations": { "type": "array", @@ -881,7 +881,7 @@ "name": "VirtualNetworkType", "modelAsString": false } - } + } }, "required": [ "publisherEmail", @@ -952,13 +952,13 @@ ], "required": [ "sku", - "properties", + "properties", "location" ], "description": "Description of an API Management service resource." }, "ApiManagementServiceBaseParameters": { - "properties": { + "properties": { "tags": { "type": "object", "additionalProperties": { @@ -1108,7 +1108,7 @@ }, "description": "Parameters supplied to the UpdateHostname operation." }, - "ErrorResponse": { + "ErrorResponse": { "properties": { "code": { "description": "Error code.", @@ -1128,7 +1128,7 @@ "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." + "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", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimapis.json index 4e166f7a2178..99234c1508d4 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimapis.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimapis.json @@ -224,6 +224,9 @@ }, "ApiManagementCreateApi": { "$ref": "./examples/ApiManagementCreateApi.json" + }, + "ApiManagementCreateApiRevision": { + "$ref": "./examples/ApiManagementCreateApiRevision.json" } }, "consumes": [ @@ -2518,7 +2521,7 @@ "$ref": "./apimdiagnostics.json#/parameters/DiagnosticIdParameter" }, { - "$ref": "#/parameters/LoggerIdParameter" + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" }, { "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" @@ -2929,7 +2932,7 @@ "description": "Paged Api Revision list representation." }, "ApiRevisionContract": { - "properties": { + "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ApiRevisionContractProperties", @@ -2953,7 +2956,7 @@ "apiRevision": { "type":"string", "minLength": 1, - "maxLength": 100, + "maxLength": 100, "readOnly": true, "description": "Revision number of API." }, @@ -3033,7 +3036,7 @@ "description": "Paged Api Revision list representation." }, "ApiReleaseContract": { - "properties": { + "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ApiReleaseContractProperties", @@ -3058,7 +3061,7 @@ "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." + "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", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimauthorizationservers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimauthorizationservers.json index d37946b973d7..3685d48944dd 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimauthorizationservers.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimauthorizationservers.json @@ -117,21 +117,21 @@ } ], "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" + "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": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimdiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimdiagnostics.json index 7fa0b87ecc4d..2a5970ae67e0 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimdiagnostics.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimdiagnostics.json @@ -538,7 +538,7 @@ "$ref": "#/parameters/DiagnosticIdParameter" }, { - "$ref": "#/parameters/LoggerIdParameter" + "$ref": "./apimloggers.json#/parameters/LoggerIdParameter" }, { "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" @@ -619,4 +619,4 @@ "x-ms-parameter-location": "method" } } -} \ No newline at end of file +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimloggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimloggers.json index 67393ec50893..abbd3ffc0de6 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimloggers.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimloggers.json @@ -438,6 +438,16 @@ "isBuffered": { "type": "boolean", "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + }, + "sampling" : { + "$ref" : "#/definitions/LoggerSamplingContract", + "description": "Sampling settings for an ApplicationInsights logger.", + "example": { + "sampling": { + "samplingType": "adaptive", + "evaluationInterval": "PT2M" + } + } } }, "required": [ @@ -497,6 +507,94 @@ } }, "description": "Parameters supplied to the Update Logger operation." + }, + "LoggerSamplingContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerSamplingProperties", + "description": "Sampling settings entity contract properties." + } + }, + "description": "Sampling settigs contract." + }, + "LoggerSamplingProperties": { + "properties": { + "samplingType": { + "type": "string", + "description": "Sampling type.", + "enum": [ + "fixed", + "adaptive" + ], + "x-ms-enum": { + "name": "SamplingType", + "modelAsString": true, + "values": [ + { + "value": "fixed", + "description": "Fixed-rate sampling." + }, + { + "value": "adaptive", + "description": "Sampling with a dynamically adjustable rate." + } + ] + } + }, + "percentage": { + "type": "number", + "format": "double", + "description": "Rate of sampling for fixed-rate sampling." + }, + "maxTelemetryItemsPerSecond": { + "type": "integer", + "format": "int32", + "description": "Target rate of telemetry items per second." + }, + "evaluationInterval": { + "type": "string", + "format": "duration", + "description": "Rate re-evaluation interval in ISO8601 format.", + "minLength": 1, + "maxLength": 2000 + }, + "percentageDecreaseTimeout": { + "type": "string", + "format": "duration", + "description": "Duration in ISO8601 format after which it's allowed to lower the sampling rate.", + "minLength": 1, + "maxLength": 2000 + }, + "percentageIncreaseTimeout": { + "type": "string", + "format": "duration", + "description": "Duration in ISO8601 format after which it's allowed to increase the sampling rate.", + "minLength": 1, + "maxLength": 2000 + }, + "minPercentage": { + "type": "number", + "format": "double", + "description": "Minimum allowed rate of sampling." + }, + "maxPercentage": { + "type": "number", + "format": "double", + "description": "Maximum allowed rate of sampling." + }, + "movingAverageRatio": { + "type": "number", + "format": "double", + "description": "Moving average ration assigned to most recent value." + }, + "initialPercentage": { + "type": "number", + "format": "double", + "description": "Initial sampling rate." + } + }, + "description": "Sampling settings for an ApplicationInsights logger." } }, "parameters": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/examples/ApiManagementCreateApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/examples/ApiManagementCreateApiRevision.json new file mode 100644 index 000000000000..6879f79629a1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/examples/ApiManagementCreateApiRevision.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2017-03-01", + "subscriptionId": "subid", + "apiId": "5a838fd48f33670ed070d77c;rev=4", + "parameters": { + "properties": { + "displayName": "Swagger Petstore V2", + "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/v4", + "path": "petstore2", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": false + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a838fd48f33670ed070d77c;rev=4", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a838fd48f33670ed070d77c;rev=4", + "properties": { + "displayName": "Swagger Petstore 2", + "apiRevision": "4", + "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/v4", + "path": "petstore2", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a838fd48f33670ed070d77c;rev=4", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a838fd48f33670ed070d77c;rev=4", + "properties": { + "displayName": "Swagger Petstore 2", + "apiRevision": "4", + "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/v4", + "path": "petstore2", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 6f8eb8b5f1e0..bb2b0407520f 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -1,5 +1,5 @@ # ApiManagement - + > see https://aka.ms/autorest This is the AutoRest configuration file for ApiManagement. @@ -7,7 +7,7 @@ This is the AutoRest configuration file for ApiManagement. --- -## Getting Started +## Getting Started To build the SDK for ApiManagement, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -21,14 +21,47 @@ To see additional help and options, run: -### Basic Information +### Basic Information These are the global settings for the ApiManagement API. ``` yaml title: ApiManagementClient description: ApiManagement Client openapi-type: arm -tag: package-2017-03 +tag: package-2018-01 +``` + +### Tag: package-2018-01 + +These settings apply only when `--tag=package-2018-01` is specified on the command line. + +``` yaml $(tag) == 'package-2018-01' +input-file: +- Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json +- Microsoft.ApiManagement/preview/2018-01-01/apimapis.json +- Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json +- Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json +- Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json +- Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json +- Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json +- Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json +- Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json +- Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json +- Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json +- Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json +- Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json +- Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json +- Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json +- Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json +- Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json +- Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json +- Microsoft.ApiManagement/preview/2018-01-01/apimreports.json +- Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json +- Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json +- Microsoft.ApiManagement/preview/2018-01-01/apimtags.json +- Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json +- Microsoft.ApiManagement/preview/2018-01-01/apimusers.json +- Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json ``` ## Suppression @@ -101,7 +134,7 @@ input-file: - Microsoft.ApiManagement/stable/2016-10-10/apimtenant.json - Microsoft.ApiManagement/stable/2016-10-10/apimusers.json ``` - + ### Tag: package-2016-07 These settings apply only when `--tag=package-2016-07` is specified on the command line. @@ -124,10 +157,13 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-go + - repo: azure-sdk-for-python + autorest_options: + use: "@microsoft.azure/autorest.python@~3.0" ``` -## C# +## C# These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. @@ -136,11 +172,14 @@ Please also specify `--csharp-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-01' && $(go) +output-folder: $(go-sdk-folder)/services/preview/apimanagement/mgmt/2018-01-01/apimanagement +``` + ### Tag: package-2017-03 and go These settings apply only when `--tag=package-2017-03 --go` is specified on the command line. diff --git a/specification/apimanagement/resource-manager/readme.python.md b/specification/apimanagement/resource-manager/readme.python.md new file mode 100644 index 000000000000..e76ec28912a7 --- /dev/null +++ b/specification/apimanagement/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.apimanagement + package-name: azure-mgmt-apimanagement + package-version: 0.1.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-apimanagement/azure/mgmt/apimanagement +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-apimanagement +``` diff --git a/specification/applicationinsights/data-plane/microsoft.insights/v1/AppInsights.json b/specification/applicationinsights/data-plane/microsoft.insights/v1/AppInsights.json index 33eb998d04f8..c0cac579e3bc 100644 --- a/specification/applicationinsights/data-plane/microsoft.insights/v1/AppInsights.json +++ b/specification/applicationinsights/data-plane/microsoft.insights/v1/AppInsights.json @@ -1979,11 +1979,10 @@ "type": "array", "items": { "type": "array", - "items": {} + "items": { + "type": "string" + } } - }, - "primaryTimeStampColumn": { - "description": "name of column in database containing primary" } }, "required": [ diff --git a/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-get.json b/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-get.json index 37ef38562b5e..d8c030e539c2 100644 --- a/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-get.json +++ b/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-get.json @@ -175,7 +175,7 @@ "http://fabrikamfiberapp.azurewebsites.net/Reports", "True", "200", - 3.3833, + "3.3833", "<250ms", "{\"_MS.ProcessedByMetricExtractors\":\"(Name:'Requests', Ver:'1.0')\"}", null, @@ -204,7 +204,7 @@ "web:2.5.0-33031", "051ad4ef-0776-11e8-ac6e-e30599af6943", "request", - 1 + "1" ], [ "2018-02-01T17:33:15.786Z", @@ -214,7 +214,7 @@ "http://fabrikamfiberapp.azurewebsites.net/", "True", "200", - 716.2912, + "716.2912", "500ms-1sec", "{\"_MS.ProcessedByMetricExtractors\":\"(Name:'Requests', Ver:'1.0')\"}", null, @@ -243,7 +243,7 @@ "web:2.5.0-33031", "051ad4f0-0776-11e8-ac6e-e30599af6943", "request", - 1 + "1" ] ] } diff --git a/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-post.json b/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-post.json index 1ea2712576a7..8b8ea764ccbe 100644 --- a/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-post.json +++ b/specification/applicationinsights/data-plane/microsoft.insights/v1/examples/query-post.json @@ -31,55 +31,55 @@ "rows": [ [ "2018-02-02T05:00:00Z", - 255 + "255" ], [ "2018-02-01T17:00:00Z", - 148 + "148" ], [ "2018-02-01T18:00:00Z", - 453 + "453" ], [ "2018-02-01T19:00:00Z", - 404 + "404" ], [ "2018-02-01T20:00:00Z", - 403 + "403" ], [ "2018-02-01T21:00:00Z", - 405 + "405" ], [ "2018-02-01T22:00:00Z", - 438 + "438" ], [ "2018-02-01T23:00:00Z", - 403 + "403" ], [ "2018-02-02T00:00:00Z", - 423 + "423" ], [ "2018-02-02T01:00:00Z", - 403 + "403" ], [ "2018-02-02T02:00:00Z", - 425 + "425" ], [ "2018-02-02T03:00:00Z", - 437 + "437" ], [ "2018-02-02T04:00:00Z", - 420 + "420" ] ] } diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/aiOperations_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json similarity index 98% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/aiOperations_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json index b61fc60c64ca..1cffd9d61bea 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/aiOperations_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json @@ -28,7 +28,7 @@ } }, "paths": { - "/providers/microsoft.insights/operations": { + "/providers/Microsoft.Insights/operations": { "get": { "tags": [ "Operations" diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentAnnotations_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json similarity index 98% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentAnnotations_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json index d754ebbe55c4..2b255b46b138 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentAnnotations_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/Annotations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/Annotations": { "get": { "description": "Gets the list of annotations for a component for given time range", "operationId": "Annotations_List", @@ -134,7 +134,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/Annotations/{annotationId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/Annotations/{annotationId}": { "delete": { "description": "Delete an Annotation of an Application Insights component.", "operationId": "Annotations_Delete", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentApiKeys_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json similarity index 98% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentApiKeys_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json index 46d4f3548e8d..0987ca2e0d02 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentApiKeys_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/ApiKeys": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/ApiKeys": { "get": { "description": "Gets a list of API keys of an Application Insights component.", "operationId": "APIKeys_List", @@ -110,7 +110,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/APIKeys/{keyId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/APIKeys/{keyId}": { "delete": { "description": "Delete an API Key of an Application Insights component.", "operationId": "APIKeys_Delete", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentContinuousExport_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json similarity index 99% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentContinuousExport_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json index 202994edb010..fe843165704c 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentContinuousExport_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration": { "get": { "description": "Gets a list of Continuous Export configuration of an Application Insights component.", "operationId": "ExportConfigurations_List", @@ -107,7 +107,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration/{exportId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}": { "delete": { "description": "Delete a Continuous Export configuration of an Application Insights component.", "operationId": "ExportConfigurations_Delete", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentFeaturesAndPricing_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json similarity index 98% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentFeaturesAndPricing_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json index 3b0aa246faf8..38513f197704 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentFeaturesAndPricing_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/currentbillingfeatures": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures": { "get": { "description": "Returns current billing features for an Application Insights component.", "operationId": "ComponentCurrentBillingFeatures_Get", @@ -107,7 +107,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/quotastatus": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/quotastatus": { "get": { "description": "Returns daily data volume cap (quota) status for an Application Insights component.", "operationId": "ComponentQuotaStatus_Get", @@ -140,7 +140,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/featurecapabilities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/featurecapabilities": { "get": { "description": "Returns feature capabilites of the application insights component.", "operationId": "ComponentFeatureCapabilities_Get", @@ -173,7 +173,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/getavailablebillingfeatures": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/getavailablebillingfeatures": { "get": { "description": "Returns all available features of the application insights component.", "operationId": "ComponentAvailableFeatures_Get", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentProactiveDetection_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json similarity index 98% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentProactiveDetection_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json index 611afa6aa9fc..2b83ff8dce73 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentProactiveDetection_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/ProactiveDetectionConfigs": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/ProactiveDetectionConfigs": { "get": { "description": "Gets a list of ProactiveDetection configurations of an Application Insights component.", "operationId": "ProactiveDetectionConfigurations_List", @@ -67,7 +67,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/ProactiveDetectionConfigs/{ConfigurationId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/ProactiveDetectionConfigs/{ConfigurationId}": { "get": { "description": "Get the ProactiveDetection configuration for this configuration id.", "operationId": "ProactiveDetectionConfigurations_Get", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentWorkItemConfigs_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json similarity index 97% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentWorkItemConfigs_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json index 015450759f20..76e8e17042b3 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/componentWorkItemConfigs_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/WorkItemConfigs": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/WorkItemConfigs": { "get": { "description": "Gets the list work item configurations that exist for the application", "operationId": "WorkItemConfigurations_List", @@ -119,7 +119,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/DefaultWorkItemConfig": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/DefaultWorkItemConfig": { "get": { "description": "Gets default work item configurations that exist for the application", "operationId": "WorkItemConfigurations_GetDefault", @@ -155,7 +155,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/WorkItemConfigs/{workItemConfigId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/WorkItemConfigs/{workItemConfigId}": { "delete": { "description": "Delete an workitem configuration of an Application Insights component.", "operationId": "WorkItemConfigurations_Delete", 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 similarity index 74% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/components_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json index 5fbdac483403..1b601da930ce 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 @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/providers/microsoft.insights/components": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/components": { "get": { "description": "Gets a list of all Application Insights components within a subscription.", "operationId": "Components_List", @@ -64,7 +64,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components": { "get": { "description": "Gets a list of Application Insights components within a resource group.", "operationId": "Components_ListByResourceGroup", @@ -97,7 +97,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}": { "delete": { "description": "Deletes an Application Insights component.", "operationId": "Components_Delete", @@ -124,7 +124,7 @@ } }, "x-ms-examples": { - "webTestDelete": { + "ComponentsDelete": { "$ref": "./examples/ComponentsDelete.json" } } @@ -243,6 +243,78 @@ } } } + }, + "/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.", + "operationId": "Components_Purge", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/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": "Gets the status of a previously submitted purge using the id returned from the original purge request.", + "operationId": "Components_GetPurgeStatus", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/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": { + "ComponentPurgeStatus": { + "$ref": "./examples/ComponentsPurgeStatus.json" + } + } + } } }, "definitions": { @@ -434,6 +506,71 @@ "description": "The URI to get the next set of Application Insights component defintions 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" + }, + "filter": { + "description": "A query to to run over the provided table and column to purge the corresponding data.", + "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" + ] } }, "parameters": { @@ -466,6 +603,22 @@ "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" + } + }, + "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." } } } \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysCreate.json similarity index 71% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysCreate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysCreate.json index 035c81678a6e..4469d50e9bf4 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysCreate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysCreate.json @@ -7,25 +7,25 @@ "APIKeyProperties": { "name": "test2", "linkedReadProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/api", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/agentconfig" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/api", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/agentconfig" ], "linkedWriteProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/annotations" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/annotations" ] } }, "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.insights/components/my-component/apikeys/fe2e0138-47c1-46c5-8726-872f54c1ca08", + "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/Microsoft.Insights/components/my-component/apikeys/fe2e0138-47c1-46c5-8726-872f54c1ca08", "name": "test", "linkedReadProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/api", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/agentconfig" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/api", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/agentconfig" ], "linkedWriteProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/annotations" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/annotations" ], "apiKey": "eip8wlzuzlf4wzczhnzao54zcswew25azs4kadhb", "createdDate": "Thu, 28 Sep 2017 16:58:52 GMT" diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysDelete.json similarity index 68% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysDelete.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysDelete.json index a30d2e925912..6c6b1b1bf719 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysDelete.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysDelete.json @@ -9,15 +9,15 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.insights/components/my-component/apikeys/bb820f1b-3110-4a8b-ba2c-8c1129d7eb6a", + "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/Microsoft.Insights/components/my-component/apikeys/bb820f1b-3110-4a8b-ba2c-8c1129d7eb6a", "name": "test2", "linkedReadProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/api", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/draft", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/extendqueries", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/search", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/aggregate", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/agentconfig" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/api", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/draft", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/extendqueries", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/search", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/aggregate", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/agentconfig" ], "linkedWriteProperties": [], "createdDate": "Thu, 28 Sep 2017 16:59:18 GMT" diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysGet.json similarity index 68% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysGet.json index a30d2e925912..6c6b1b1bf719 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysGet.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysGet.json @@ -9,15 +9,15 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.insights/components/my-component/apikeys/bb820f1b-3110-4a8b-ba2c-8c1129d7eb6a", + "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/Microsoft.Insights/components/my-component/apikeys/bb820f1b-3110-4a8b-ba2c-8c1129d7eb6a", "name": "test2", "linkedReadProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/api", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/draft", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/extendqueries", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/search", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/aggregate", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/agentconfig" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/api", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/draft", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/extendqueries", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/search", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/aggregate", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/agentconfig" ], "linkedWriteProperties": [], "createdDate": "Thu, 28 Sep 2017 16:59:18 GMT" diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysList.json similarity index 65% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysList.json index 3fdc70570fef..0e19d8091350 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/APIKeysList.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/APIKeysList.json @@ -10,31 +10,31 @@ "body": { "value": [ { - "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.insights/components/my-component/apikeys/fe2e0138-47c1-46c5-8726-872f54c1ca08", + "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/Microsoft.Insights/components/my-component/apikeys/fe2e0138-47c1-46c5-8726-872f54c1ca08", "name": "test", "linkedReadProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/api", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/draft", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/extendqueries", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/search", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/aggregate", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/agentconfig" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/api", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/draft", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/extendqueries", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/search", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/aggregate", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/agentconfig" ], "linkedWriteProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/annotations" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/annotations" ], "createdDate": "Thu, 28 Sep 2017 16:58:52 GMT" }, { - "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.insights/components/my-component/apikeys/bb820f1b-3110-4a8b-ba2c-8c1129d7eb6a", + "id": "/subscriptions/subid/resourcegroups/my-resource-group/providers/Microsoft.Insights/components/my-component/apikeys/bb820f1b-3110-4a8b-ba2c-8c1129d7eb6a", "name": "test2", "linkedReadProperties": [ - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/api", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/draft", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/extendqueries", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/search", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/aggregate", - "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component/agentconfig" + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/api", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/draft", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/extendqueries", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/search", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/aggregate", + "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component/agentconfig" ], "linkedWriteProperties": [], "createdDate": "Thu, 28 Sep 2017 16:59:18 GMT" diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsCreate.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsCreate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsCreate.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsDelete.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsDelete.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsDelete.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsList.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AnnotationsList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AnnotationsList.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AvailableBillingFeaturesGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AvailableBillingFeaturesGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/AvailableBillingFeaturesGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/AvailableBillingFeaturesGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json similarity index 92% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsCreate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json index 5cb47a8f5009..d890802e08b2 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsCreate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json @@ -19,9 +19,9 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", "name": "my-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": "", "kind": "web", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsDelete.json similarity index 91% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsDelete.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsDelete.json index c61a59a7436f..3857017fae2c 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsDelete.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsDelete.json @@ -7,7 +7,8 @@ }, "responses": { "200": { - "body": {} + }, + "204": { } } } \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsGet.json similarity index 90% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsGet.json index ef4935285fd5..1765057f0052 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsGet.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsGet.json @@ -8,9 +8,9 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", "name": "my-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": "", "kind": "web", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsList.json similarity index 90% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsList.json index 6c42e1a24366..5af010e6ba47 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsList.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsList.json @@ -8,9 +8,9 @@ "body": { "value": [ { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", "name": "my-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": "", "kind": "web", @@ -30,9 +30,9 @@ } }, { - "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/microsoft.insights/components/my-other-component", + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", "name": "my-other-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": "", "kind": "web", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsListByResourceGroup.json similarity index 91% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsListByResourceGroup.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsListByResourceGroup.json index 12d707cb9755..3cb235c4ad8c 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsListByResourceGroup.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsListByResourceGroup.json @@ -9,9 +9,9 @@ "body": { "value": [ { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", "name": "my-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": "", "kind": "web", @@ -31,9 +31,9 @@ } }, { - "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/microsoft.insights/components/my-other-component", + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", "name": "my-other-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": "", "kind": "web", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsPurge.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsPurge.json new file mode 100644 index 000000000000..599cea6afb76 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsPurge.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "body": { + "table": "requests", + "filters": [ + { + "column": "duration", + "filter": ">1000" + }, + { + "column": "timestamp", + "filter": ">= datetime(2017-09-01T00:00:00.000Z)" + }, + { + "column": "application_Version", + "filter": "in ('Draft_master_20171018.2', 'Draft_master_2017024.1')" + } + ] + } + }, + "responses": { + "202": { + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} + \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsPurgeStatus.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsPurgeStatus.json new file mode 100644 index 000000000000..c28fdc13744d --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsPurgeStatus.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "purgeId": "6779dd32-272a-45d3-a9b8-84d7f47abfb7" + }, + "responses": { + "200": { + "body": { + "status": "Completed" + } + } + } +} + \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json similarity index 93% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsUpdate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json index a4041e8f2cbc..3dc09e6d170d 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json @@ -17,9 +17,9 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", "name": "my-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": { "ApplicationGatewayType": "Internal-Only", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdateTagsOnly.json similarity index 93% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsUpdateTagsOnly.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdateTagsOnly.json index 995dd4a9245d..8fcce8d1d082 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ComponentsUpdateTagsOnly.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdateTagsOnly.json @@ -17,9 +17,9 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", "name": "my-component", - "type": "microsoft.insights/components", + "type": "Microsoft.Insights/components", "location": "South Central US", "tags": { "ApplicationGatewayType": "Internal-Only", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/CurrentBillingFeaturesGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/CurrentBillingFeaturesGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/CurrentBillingFeaturesGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/CurrentBillingFeaturesGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/CurrentBillingFeaturesUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/CurrentBillingFeaturesUpdate.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/CurrentBillingFeaturesUpdate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/CurrentBillingFeaturesUpdate.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationDelete.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationDelete.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationDelete.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationUpdate.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationUpdate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationUpdate.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationsList.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationsList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationsList.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationsPost.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationsPost.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ExportConfigurationsPost.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ExportConfigurationsPost.json diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteAdd.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteAdd.json new file mode 100644 index 000000000000..b86643d49d8d --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteAdd.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "resourceGroupName": "my-resource-group", + "resourceName": "my-ai-component", + "subscriptionId": "subid", + "favoriteId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "favoriteProperties": { + "Name": "Blah Blah Blah", + "Config": "{\"MEDataModelRawJSON\":\"{\\n \\\"version\\\": \\\"1.4.1\\\",\\n \\\"isCustomDataModel\\\": true,\\n \\\"items\\\": [\\n {\\n \\\"id\\\": \\\"90a7134d-9a38-4c25-88d3-a495209873eb\\\",\\n \\\"chartType\\\": \\\"Area\\\",\\n \\\"chartHeight\\\": 4,\\n \\\"metrics\\\": [\\n {\\n \\\"id\\\": \\\"preview/requests/count\\\",\\n \\\"metricAggregation\\\": \\\"Sum\\\",\\n \\\"color\\\": \\\"msportalfx-bgcolor-d0\\\"\\n }\\n ],\\n \\\"priorPeriod\\\": false,\\n \\\"clickAction\\\": {\\n \\\"defaultBlade\\\": \\\"SearchBlade\\\"\\n },\\n \\\"horizontalBars\\\": true,\\n \\\"showOther\\\": true,\\n \\\"aggregation\\\": \\\"Sum\\\",\\n \\\"percentage\\\": false,\\n \\\"palette\\\": \\\"fail\\\",\\n \\\"yAxisOption\\\": 0,\\n \\\"title\\\": \\\"\\\"\\n },\\n {\\n \\\"id\\\": \\\"0c289098-88e8-4010-b212-546815cddf70\\\",\\n \\\"chartType\\\": \\\"Area\\\",\\n \\\"chartHeight\\\": 2,\\n \\\"metrics\\\": [\\n {\\n \\\"id\\\": \\\"preview/requests/duration\\\",\\n \\\"metricAggregation\\\": \\\"Avg\\\",\\n \\\"color\\\": \\\"msportalfx-bgcolor-j1\\\"\\n }\\n ],\\n \\\"priorPeriod\\\": false,\\n \\\"clickAction\\\": {\\n \\\"defaultBlade\\\": \\\"SearchBlade\\\"\\n },\\n \\\"horizontalBars\\\": true,\\n \\\"showOther\\\": true,\\n \\\"aggregation\\\": \\\"Avg\\\",\\n \\\"percentage\\\": false,\\n \\\"palette\\\": \\\"greenHues\\\",\\n \\\"yAxisOption\\\": 0,\\n \\\"title\\\": \\\"\\\"\\n },\\n {\\n \\\"id\\\": \\\"cbdaab6f-a808-4f71-aca5-b3976cbb7345\\\",\\n \\\"chartType\\\": \\\"Bar\\\",\\n \\\"chartHeight\\\": 4,\\n \\\"metrics\\\": [\\n {\\n \\\"id\\\": \\\"preview/requests/duration\\\",\\n \\\"metricAggregation\\\": \\\"Avg\\\",\\n \\\"color\\\": \\\"msportalfx-bgcolor-d0\\\"\\n }\\n ],\\n \\\"priorPeriod\\\": false,\\n \\\"clickAction\\\": {\\n \\\"defaultBlade\\\": \\\"SearchBlade\\\"\\n },\\n \\\"horizontalBars\\\": true,\\n \\\"showOther\\\": true,\\n \\\"aggregation\\\": \\\"Avg\\\",\\n \\\"percentage\\\": false,\\n \\\"palette\\\": \\\"magentaHues\\\",\\n \\\"yAxisOption\\\": 0,\\n \\\"title\\\": \\\"\\\"\\n },\\n {\\n \\\"id\\\": \\\"1d5a6a3a-9fa1-4099-9cf9-05eff72d1b02\\\",\\n \\\"grouping\\\": {\\n \\\"kind\\\": \\\"ByDimension\\\",\\n \\\"dimension\\\": \\\"context.application.version\\\"\\n },\\n \\\"chartType\\\": \\\"Grid\\\",\\n \\\"chartHeight\\\": 1,\\n \\\"metrics\\\": [\\n {\\n \\\"id\\\": \\\"basicException.count\\\",\\n \\\"metricAggregation\\\": \\\"Sum\\\",\\n \\\"color\\\": \\\"msportalfx-bgcolor-g0\\\"\\n },\\n {\\n \\\"id\\\": \\\"requestFailed.count\\\",\\n \\\"metricAggregation\\\": \\\"Sum\\\",\\n \\\"color\\\": \\\"msportalfx-bgcolor-f0s2\\\"\\n }\\n ],\\n \\\"priorPeriod\\\": true,\\n \\\"clickAction\\\": {\\n \\\"defaultBlade\\\": \\\"SearchBlade\\\"\\n },\\n \\\"horizontalBars\\\": true,\\n \\\"showOther\\\": true,\\n \\\"percentage\\\": false,\\n \\\"palette\\\": \\\"blueHues\\\",\\n \\\"yAxisOption\\\": 0,\\n \\\"title\\\": \\\"\\\"\\n }\\n ],\\n \\\"currentFilter\\\": {\\n \\\"eventTypes\\\": [\\n 1,\\n 2\\n ],\\n \\\"typeFacets\\\": {},\\n \\\"isPermissive\\\": false\\n },\\n \\\"timeContext\\\": {\\n \\\"durationMs\\\": 75600000,\\n \\\"endTime\\\": \\\"2018-01-31T20:30:00.000Z\\\",\\n \\\"createdTime\\\": \\\"2018-01-31T23:54:26.280Z\\\",\\n \\\"isInitialTime\\\": false,\\n \\\"grain\\\": 1,\\n \\\"useDashboardTimeRange\\\": false\\n },\\n \\\"jsonUri\\\": \\\"Favorite_BlankChart\\\",\\n \\\"timeSource\\\": 0\\n}\"}", + "Version": "ME", + "FavoriteId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "FavoriteType": "shared", + "SourceType": null, + "TimeModified": null, + "Tags": [ + "TagSample01", + "TagSample02" + ], + "Category": null, + "IsGeneratedFromTemplate": false + } + }, + "responses": { + "200": { + "body": { + "Name": "Blah Blah Blah", + "Config": "{\"MEDataModelRawJSON\":{\n \"version\": \"1.4.1\",\n \"isCustomDataModel\": true,\n \"items\": [\n {\n \"id\": \"90a7134d-9a38-4c25-88d3-a495209873eb\",\n \"chartType\": \"Area\",\n \"chartHeight\": 4,\n \"metrics\": [\n {\n \"id\": \"preview/requests/count\",\n \"metricAggregation\": \"Sum\",\n \"color\": \"msportalfx-bgcolor-d0\"\n }\n],\n \"priorPeriod\": false,\n \"clickAction\": {\n \"defaultBlade\": \"SearchBlade\"\n },\n \"horizontalBars\": true,\n \"showOther\": true,\n \"aggregation\": \"Sum\",\n \"percentage\": false,\n \"palette\": \"fail\",\n \"yAxisOption\": 0,\n \"title\": \"\"\n },\n {\n \"id\": \"0c289098-88e8-4010-b212-546815cddf70\",\n \"chartType\": \"Area\",\n \"chartHeight\": 2,\n \"metrics\": [\n {\n \"id\": \"preview/requests/duration\",\n \"metricAggregation\": \"Avg\",\n \"color\": \"msportalfx-bgcolor-j1\"\n }\n ],\n \"priorPeriod\": false,\n \"clickAction\": {\n \"defaultBlade\": \"SearchBlade\"\n },\n \"horizontalBars\": true,\n \"showOther\": true,\n \"aggregation\": \"Avg\",\n \"percentage\": false,\n \"palette\": \"greenHues\",\n \"yAxisOption\": 0,\n \"title\": \"\"\n },\n {\n \"id\": \"cbdaab6f-a808-4f71-aca5-b3976cbb7345\",\n \"chartType\": \"Bar\",\n \"chartHeight\": 4,\n \"metrics\": [\n {\n \"id\": \"preview/requests/duration\",\n \"metricAggregation\": \"Avg\",\n \"color\": \"msportalfx-bgcolor-d0\"\n }\n ],\n \"priorPeriod\": false,\n \"clickAction\": {\n \"defaultBlade\": \"SearchBlade\"\n },\n \"horizontalBars\": true,\n \"showOther\": true,\n \"aggregation\": \"Avg\",\n \"percentage\": false,\n \"palette\": \"magentaHues\",\n \"yAxisOption\": 0,\n \"title\": \"\"\n },\n {\n \"id\": \"1d5a6a3a-9fa1-4099-9cf9-05eff72d1b02\",\n \"grouping\": {\n \"kind\": \"ByDimension\",\n \"dimension\": \"context.application.version\"\n },\n \"chartType\": \"Grid\",\n \"chartHeight\": 1,\n \"metrics\": [\n {\n \"id\": \"basicException.count\",\n \"metricAggregation\": \"Sum\",\n \"color\": \"msportalfx-bgcolor-g0\"\n },\n {\n \"id\": \"requestFailed.count\",\n \"metricAggregation\": \"Sum\",\n \"color\": \"msportalfx-bgcolor-f0s2\"\n }\n ],\n \"priorPeriod\": true,\n \"clickAction\": {\n \"defaultBlade\": \"SearchBlade\"\n },\n \"horizontalBars\": true,\n \"showOther\": true,\n \"percentage\": false,\n \"palette\": \"blueHues\",\n \"yAxisOption\": 0,\n \"title\": \"\"\n }\n ],\n \"currentFilter\": {\n \"eventTypes\": [\n 1,\n 2\n ],\n \"typeFacets\": {},\n \"isPermissive\": false\n },\n \"timeContext\": {\n \"durationMs\": 75600000,\n \"endTime\": \"2018-01-31T20:30:00.000Z\",\n \"createdTime\": \"2018-01-31T23:54:26.280Z\",\n \"isInitialTime\": false,\n \"grain\": 1,\n \"useDashboardTimeRange\": false\n },\n \"jsonUri\": \"Favorite_BlankChart\",\n \"timeSource\": 0\n}\"}", + "Version": "ME", + "FavoriteId": "deadb33f-8bee-4d3b-a059-9be8dac93960", + "FavoriteType": "shared", + "SourceType": "", + "TimeModified": "2018-02-02T23:18:32.1850959Z", + "Tags": [ + "TagSample01", + "TagSample02" + ], + "Category": "", + "IsGeneratedFromTemplate": false + } + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteDelete.json new file mode 100644 index 000000000000..85705a58c12c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-ai-component", + "favoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteGet.json new file mode 100644 index 000000000000..15a8003d2ffb --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-ai-component", + "favoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2" + }, + "responses": { + "200": { + "body": { + "Name": "Example Search Blade Favorite", + "Config": "{\"TimeSelection\":{\"durationMs\":1800000,\"endTime\":\"2018-01-31T23:56:15.493Z\",\"createdTime\":\"Wed Jan 31 2018 15:58:36 GMT-0800 (Pacific Standard Time)\",\"isInitialTime\":false,\"grain\":1,\"useDashboardTimeRange\":false},\"SearchFilter\":{\"eventTypes\":[1,2],\"typeFacets\":{},\"isPermissive\":false},\"QueryText\":\"*\",\"partId\":\"99e33a16-1b00-4a7d-b98f-a3c1bb3a4df8\"}", + "Version": "Search", + "FavoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "FavoriteType": "shared", + "SourceType": null, + "TimeModified": "2018-01-31T23:59:25.4594264Z", + "Tags": ["SampleTag1", "SampleTag2"], + "Category": null, + "IsGeneratedFromTemplate" : false + } + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteUpdate.json new file mode 100644 index 000000000000..e9c8a0203e5a --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoriteUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-ai-component", + "favoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "favoriteProperties": { + "Name": "Derek Changed This", + "Config": "{\"MEDataModelRawJSON\":\"{\\\"version\\\": \\\"1.4.1\\\",\\\"isCustomDataModel\\\": true,\\\"items\\\": [{\\\"id\\\": \\\"90a7134d-9a38-4c25-88d3-a495209873eb\\\",\\\"chartType\\\": \\\"Area\\\",\\\"chartHeight\\\": 4,\\\"metrics\\\": [{\\\"id\\\": \\\"preview/requests/count\\\",\\\"metricAggregation\\\": \\\"Sum\\\",\\\"color\\\": \\\"msportalfx-bgcolor-d0\\\"}],\\\"priorPeriod\\\": false,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"aggregation\\\": \\\"Sum\\\",\\\"percentage\\\": false,\\\"palette\\\": \\\"fail\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"},{\\\"id\\\": \\\"0c289098-88e8-4010-b212-546815cddf70\\\",\\\"chartType\\\": \\\"Area\\\",\\\"chartHeight\\\": 2,\\\"metrics\\\": [{\\\"id\\\": \\\"preview/requests/duration\\\",\\\"metricAggregation\\\": \\\"Avg\\\",\\\"color\\\": \\\"msportalfx-bgcolor-j1\\\"}],\\\"priorPeriod\\\": false,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"aggregation\\\": \\\"Avg\\\",\\\"percentage\\\": false,\\\"palette\\\": \\\"greenHues\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"},{\\\"id\\\": \\\"cbdaab6f-a808-4f71-aca5-b3976cbb7345\\\",\\\"chartType\\\": \\\"Bar\\\",\\\"chartHeight\\\": 4,\\\"metrics\\\": [{\\\"id\\\": \\\"preview/requests/duration\\\",\\\"metricAggregation\\\": \\\"Avg\\\",\\\"color\\\": \\\"msportalfx-bgcolor-d0\\\"}],\\\"priorPeriod\\\": false,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"aggregation\\\": \\\"Avg\\\",\\\"percentage\\\": false,\\\"palette\\\": \\\"magentaHues\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"},{\\\"id\\\": \\\"1d5a6a3a-9fa1-4099-9cf9-05eff72d1b02\\\",\\\"grouping\\\": {\\\"kind\\\": \\\"ByDimension\\\",\\\"dimension\\\": \\\"context.application.version\\\"},\\\"chartType\\\": \\\"Grid\\\",\\\"chartHeight\\\": 1,\\\"metrics\\\": [{\\\"id\\\": \\\"basicException.count\\\",\\\"metricAggregation\\\": \\\"Sum\\\",\\\"color\\\": \\\"msportalfx-bgcolor-g0\\\"},{\\\"id\\\": \\\"requestFailed.count\\\",\\\"metricAggregation\\\": \\\"Sum\\\",\\\"color\\\": \\\"msportalfx-bgcolor-f0s2\\\"}],\\\"priorPeriod\\\": true,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"percentage\\\": false,\\\"palette\\\": \\\"blueHues\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"}],\\\"currentFilter\\\": {\\\"eventTypes\\\": [1,2],\\\"typeFacets\\\": {},\\\"isPermissive\\\": false},\\\"timeContext\\\": {\\\"durationMs\\\": 75600000,\\\"endTime\\\": \\\"2018-01-31T20:30:00.000Z\\\",\\\"createdTime\\\": \\\"2018-01-31T23:54:26.280Z\\\",\\\"isInitialTime\\\": false,\\\"grain\\\": 1,\\\"useDashboardTimeRange\\\": false},\\\"jsonUri\\\": \\\"Favorite_BlankChart\\\",\\\"timeSource\\\": 0}\"}", + "Version": "ME", + "FavoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "FavoriteType": "shared", + "SourceType": null, + "TimeModified": "2018-02-02T18:39:11.6569686Z", + "Tags": [ + "TagSample01", + "TagSample02", + "TagSample03" + ], + "Category": null, + "IsGeneratedFromTemplate": false + } + }, + "responses": { + "200": { + "body": { + "Name": "Derek Changed This", + "Config": "{\"MEDataModelRawJSON\":\"{\\\"version\\\": \\\"1.4.1\\\",\\\"isCustomDataModel\\\": true,\\\"items\\\": [{\\\"id\\\": \\\"90a7134d-9a38-4c25-88d3-a495209873eb\\\",\\\"chartType\\\": \\\"Area\\\",\\\"chartHeight\\\": 4,\\\"metrics\\\": [{\\\"id\\\": \\\"preview/requests/count\\\",\\\"metricAggregation\\\": \\\"Sum\\\",\\\"color\\\": \\\"msportalfx-bgcolor-d0\\\"}],\\\"priorPeriod\\\": false,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"aggregation\\\": \\\"Sum\\\",\\\"percentage\\\": false,\\\"palette\\\": \\\"fail\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"},{\\\"id\\\": \\\"0c289098-88e8-4010-b212-546815cddf70\\\",\\\"chartType\\\": \\\"Area\\\",\\\"chartHeight\\\": 2,\\\"metrics\\\": [{\\\"id\\\": \\\"preview/requests/duration\\\",\\\"metricAggregation\\\": \\\"Avg\\\",\\\"color\\\": \\\"msportalfx-bgcolor-j1\\\"}],\\\"priorPeriod\\\": false,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"aggregation\\\": \\\"Avg\\\",\\\"percentage\\\": false,\\\"palette\\\": \\\"greenHues\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"},{\\\"id\\\": \\\"cbdaab6f-a808-4f71-aca5-b3976cbb7345\\\",\\\"chartType\\\": \\\"Bar\\\",\\\"chartHeight\\\": 4,\\\"metrics\\\": [{\\\"id\\\": \\\"preview/requests/duration\\\",\\\"metricAggregation\\\": \\\"Avg\\\",\\\"color\\\": \\\"msportalfx-bgcolor-d0\\\"}],\\\"priorPeriod\\\": false,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"aggregation\\\": \\\"Avg\\\",\\\"percentage\\\": false,\\\"palette\\\": \\\"magentaHues\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"},{\\\"id\\\": \\\"1d5a6a3a-9fa1-4099-9cf9-05eff72d1b02\\\",\\\"grouping\\\": {\\\"kind\\\": \\\"ByDimension\\\",\\\"dimension\\\": \\\"context.application.version\\\"},\\\"chartType\\\": \\\"Grid\\\",\\\"chartHeight\\\": 1,\\\"metrics\\\": [{\\\"id\\\": \\\"basicException.count\\\",\\\"metricAggregation\\\": \\\"Sum\\\",\\\"color\\\": \\\"msportalfx-bgcolor-g0\\\"},{\\\"id\\\": \\\"requestFailed.count\\\",\\\"metricAggregation\\\": \\\"Sum\\\",\\\"color\\\": \\\"msportalfx-bgcolor-f0s2\\\"}],\\\"priorPeriod\\\": true,\\\"clickAction\\\": {\\\"defaultBlade\\\": \\\"SearchBlade\\\"},\\\"horizontalBars\\\": true,\\\"showOther\\\": true,\\\"percentage\\\": false,\\\"palette\\\": \\\"blueHues\\\",\\\"yAxisOption\\\": 0,\\\"title\\\": \\\"\\\"}],\\\"currentFilter\\\": {\\\"eventTypes\\\": [1,2],\\\"typeFacets\\\": {},\\\"isPermissive\\\": false},\\\"timeContext\\\": {\\\"durationMs\\\": 75600000,\\\"endTime\\\": \\\"2018-01-31T20:30:00.000Z\\\",\\\"createdTime\\\": \\\"2018-01-31T23:54:26.280Z\\\",\\\"isInitialTime\\\": false,\\\"grain\\\": 1,\\\"useDashboardTimeRange\\\": false},\\\"jsonUri\\\": \\\"Favorite_BlankChart\\\",\\\"timeSource\\\": 0}\"}", + "Version": "ME", + "FavoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "FavoriteType": "shared", + "SourceType": null, + "TimeModified": "2018-02-02T18:39:11.6569686Z", + "Tags": [ + "TagSample01", + "TagSample02", + "TagSample03" + ], + "Category": null, + "IsGeneratedFromTemplate": false + } + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoritesList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoritesList.json new file mode 100644 index 000000000000..810a22f7e59b --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FavoritesList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-ai-component" + }, + "responses": { + "200": { + "body": [ + { + "Name": "Example Metric Chart Favorite", + "Config": "blah blah", + "Version": "ME", + "FavoriteId": "c0deea5e-3344-40f2-96f8-6f8e1c3b5722", + "FavoriteType": "shared", + "SourceType": null, + "TimeModified": "2018-01-31T23:56:16.008902Z", + "Tags": [], + "Category": null, + "IsGeneratedFromTemplate": false + }, + { + "Name": "Example Search Blade Favorite", + "Config": "{\"TimeSelection\":{\"durationMs\":1800000,\"endTime\":\"2018-01-31T23:56:15.493Z\",\"createdTime\":\"Wed Jan 31 2018 15:58:36 GMT-0800 (Pacific Standard Time)\",\"isInitialTime\":false,\"grain\":1,\"useDashboardTimeRange\":false},\"SearchFilter\":{\"eventTypes\":[1,2],\"typeFacets\":{},\"isPermissive\":false},\"QueryText\":\"*\",\"partId\":\"99e33a16-1b00-4a7d-b98f-a3c1bb3a4df8\"}", + "Version": "Search", + "FavoriteId": "deadb33f-5e0d-4064-8ebb-1a4ed0313eb2", + "FavoriteType": "shared", + "SourceType": null, + "TimeModified": "2018-01-31T23:59:25.4594264Z", + "Tags": ["SampleTag01", "SampleTag2"], + "Category": null, + "IsGeneratedFromTemplate" : false + } + ] + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/FeatureCapabilitiesGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FeatureCapabilitiesGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/FeatureCapabilitiesGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/FeatureCapabilitiesGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationUpdate.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationUpdate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationUpdate.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationsList.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationsList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ProactiveDetectionConfigurationsList.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/QuotaStatusGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/QuotaStatusGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/QuotaStatusGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/QuotaStatusGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestCreate.json similarity index 95% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestCreate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestCreate.json index b6a6d6bdbfe9..c06f7d97d29e 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestCreate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestCreate.json @@ -30,12 +30,12 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/webtests/my-webtest-my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", "name": "my-webtest-my-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Web/sites/mytestwebapp": "Resource" }, "kind": "ping", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestDelete.json similarity index 91% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestDelete.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestDelete.json index 763e07eff3a8..70e0d4464d09 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestDelete.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestDelete.json @@ -7,7 +7,8 @@ }, "responses": { "200": { - "body": {} + }, + "204": { } } } \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestGet.json similarity index 93% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestGet.json index bc4766131a15..2b471cdaf3e4 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestGet.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestGet.json @@ -8,12 +8,12 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-test-resources/providers/microsoft.insights/webtests/my-webtest-01-mywebservice", + "id": "/subscriptions/subid/resourceGroups/my-test-resources/providers/Microsoft.Insights/webtests/my-webtest-01-mywebservice", "name": "my-webtest-01-mywebservice", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-test-resources/providers/microsoft.insights/components/mytester": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-test-resources/providers/Microsoft.Insights/components/mytester": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-test-resources/providers/Microsoft.Web/sites/mytester": "Resource" }, "kind": "ping", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestList.json similarity index 92% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestList.json index 44372322364a..9ecdfad576d3 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestList.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestList.json @@ -9,12 +9,12 @@ "body": { "value": [ { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/webtests/my-webtest-my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", "name": "my-webtest-my-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Web/sites/mytestwebapp": "Resource" }, "kind": "ping", @@ -35,13 +35,13 @@ } }, { - "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/microsoft.insights/webtests/my-webtest-my-other-component", + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-other-component", "name": "my-webtest-my-other-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { "Test": "You can delete this synthetic monitor anytime", - "hidden-link:/subscriptions/subid/resourceGroups/my-other-resource-group/providers/microsoft.insights/components/my-other-component": "Resource" + "hidden-link:/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component": "Resource" }, "kind": "ping", "properties": { diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestListByResourceGroup.json similarity index 92% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestListByResourceGroup.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestListByResourceGroup.json index e044980f958c..5d6ab3be9bf8 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestListByResourceGroup.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestListByResourceGroup.json @@ -9,12 +9,12 @@ "body": { "value": [ { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/webtests/my-webtest-my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", "name": "my-webtest-my-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Web/sites/mytestwebapp": "Resource" }, "kind": "ping", @@ -39,13 +39,13 @@ } }, { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/webtests/my-webtest-my-other-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-other-component", "name": "my-webtest-my-other-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { "Test": "You can delete this synthetic monitor anytime", - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-other-component": "Resource" + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-other-component": "Resource" }, "kind": "ping", "properties": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestLocationsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestLocationsList.json new file mode 100644 index 000000000000..f2c22768be82 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestLocationsList.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2015-05-01", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": { + "body": [ + { + "DisplayName": "US : IL-Chicago", + "Tag": "us-il-ch1-azr" + }, + { + "DisplayName": "NL : Amsterdam", + "Tag": "emea-nl-ams-azr" + }, + { + "DisplayName": "SG : Singapore", + "Tag": "apac-sg-sin-azr" + }, + { + "DisplayName": "US : CA-San Jose", + "Tag": "us-ca-sjc-azr" + }, + { + "DisplayName": "US : TX-San Antonio", + "Tag": "us-tx-sn1-azr" + }, + { + "DisplayName": "US : VA-Ashburn", + "Tag": "us-va-ash-azr" + }, + { + "DisplayName": "HK : Hong Kong", + "Tag": "apac-hk-hkn-azr" + }, + { + "DisplayName": "IE : Dublin", + "Tag": "emea-gb-db3-azr" + }, + { + "DisplayName": "JP : Kawaguchi", + "Tag": "apac-jp-kaw-edge" + }, + { + "DisplayName": "AU : Sydney", + "Tag": "emea-au-syd-edge" + }, + { + "DisplayName": "CH : Zurich", + "Tag": "emea-ch-zrh-edge" + }, + { + "DisplayName": "FR : Paris", + "Tag": "emea-fr-pra-edge" + }, + { + "DisplayName": "RU : Moscow", + "Tag": "emea-ru-msa-edge" + }, + { + "DisplayName": "SE : Stockholm", + "Tag": "emea-se-sto-edge" + }, + { + "DisplayName": "BR : Sao Paulo", + "Tag": "latam-br-gru-edge" + }, + { + "DisplayName": "US : FL-Miami", + "Tag": "us-fl-mia-edge" + } + ] + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestUpdate.json similarity index 95% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestUpdate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestUpdate.json index 20b26b34a195..f821bf78ee86 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestUpdate.json @@ -30,12 +30,12 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/webtests/my-webtest-my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", "name": "my-webtest-my-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Web/sites/mytestwebapp": "Resource" }, "kind": "ping", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestUpdateTagsOnly.json similarity index 92% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestUpdateTagsOnly.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestUpdateTagsOnly.json index 07aa1b7b12a5..0e886fa9e6ea 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WebTestUpdateTagsOnly.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WebTestUpdateTagsOnly.json @@ -6,7 +6,7 @@ "webTestName": "my-webtest-my-component", "WebTestTags": { "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Web/sites/mytestwebapp": "Resource", "CustomField-01": "This is a random value", "SystemType": "A08", @@ -17,12 +17,12 @@ "responses": { "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/webtests/my-webtest-my-component", + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/webtests/my-webtest-my-component", "name": "my-webtest-my-component", - "type": "microsoft.insights/webtests", + "type": "Microsoft.Insights/webtests", "location": "southcentralus", "tags": { - "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/components/my-component": "Resource", + "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component": "Resource", "hidden-link:/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Web/sites/mytestwebapp": "Resource", "CustomField-01": "This is a random value", "SystemType": "A08", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigDefaultGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigDefaultGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigDefaultGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigDefaultGet.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigDelete.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigDelete.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigDelete.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigsCreate.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigsCreate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigsCreate.json diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigsGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/examples/WorkItemConfigsGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/WorkItemConfigsGet.json diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/favorites_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/favorites_API.json new file mode 100644 index 000000000000..3ed275e160aa --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/favorites_API.json @@ -0,0 +1,404 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for favorites.", + "version": "2015-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/favorites": { + "get": { + "description": "Gets a list of favorites defined within an Application Insights component.", + "operationId": "Favorites_List", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/FavoriteTypeParameter" + }, + { + "$ref": "#/parameters/SourceTypeParameter" + }, + { + "$ref": "#/parameters/CanFetchFavoriteContentParameter" + }, + { + "$ref": "#/parameters/TagsFilterParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more favorite definitions associated to the Application Insights component.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponentFavorite" + } + } + } + }, + "x-ms-examples": { + "FavoritesList": { + "$ref": "./examples/FavoritesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/favorites/{favoriteId}": { + "get": { + "description": "Get a single favorite by its FavoriteId, defined within an Application Insights component.", + "operationId": "Favorite_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/FavoriteIdParameter" + } + ], + "responses": { + "200": { + "description": "A favorite definition associated to the Application Insights component.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentFavorite" + } + } + }, + "x-ms-examples": { + "FavoriteGet": { + "$ref": "./examples/FavoriteGet.json" + } + } + }, + "put": { + "description": "Adds a new favorites to an Application Insights component.", + "operationId": "Favorite_Add", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/FavoriteIdParameter" + }, + { + "name": "favoriteProperties", + "description": "Properties that need to be specified to create a new favorite and add it to an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentFavorite" + } + } + ], + "responses": { + "200": { + "description": "The newly created favorite that is associated to the Application Insights component.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentFavorite" + } + } + }, + "x-ms-examples": { + "FavoriteAdd": { + "$ref": "./examples/FavoriteAdd.json" + } + } + }, + "patch": { + "description": "Updates a favorite that has already been added to an Application Insights component.", + "operationId": "Favorite_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/FavoriteIdParameter" + }, + { + "name": "favoriteProperties", + "description": "Properties that need to be specified to update the existing favorite.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentFavorite" + } + } + ], + "responses": { + "200": { + "description": "The favorite definition updated.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentFavorite" + } + } + }, + "x-ms-examples": { + "FavoriteList": { + "$ref": "./examples/FavoriteUpdate.json" + } + } + }, + "delete": { + "description": "Remove a favorite that is associated to an Application Insights component.", + "operationId": "Favorite_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/FavoriteIdParameter" + } + ], + "responses": { + "200": { + "description": "The favorite has been successfully removed from the Application Insights component." + } + }, + "x-ms-examples": { + "FavoriteList": { + "$ref": "./examples/FavoriteDelete.json" + } + } + } + } + }, + "definitions": { + "ApplicationInsightsComponentFavorite": { + "description": "Properties that define a favorite that is associated to an Application Insights component.", + "properties": { + "Name": { + "type": "string", + "description": "The user-defined name of the favorite." + }, + "Config": { + "type": "string", + "description": "Configuration of this particular favorite, which are driven by the Azure portal UX. Configuration data is a string containing valid JSON" + }, + "Version": { + "type": "string", + "description": "This instance's version of the data model. This can change as new features are added that can be marked favorite. Current examples include MetricsExplorer (ME) and Search." + }, + "FavoriteId": { + "type": "string", + "description": "Internally assigned unique id of the favorite definition.", + "readOnly": true + }, + "FavoriteType": { + "description": "Enum indicating if this favorite definition is owned by a specific user or is shared between all users with access to the Application Insights component.", + "type": "string", + "enum": [ + "shared", + "user" + ], + "x-ms-enum": { + "name": "FavoriteType", + "modelAsString": false + } + }, + "SourceType": { + "type": "string", + "description": "The source of the favorite definition." + }, + "TimeModified": { + "type": "string", + "description": "Date and time in UTC of the last modification that was made to this favorite definition.", + "readOnly": true + }, + "Tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of 0 or more tags that are associated with this favorite definition" + }, + "Category": { + "type": "string", + "description": "Favorite category, as defined by the user at creation time." + }, + "IsGeneratedFromTemplate": { + "type": "boolean", + "description": "Flag denoting wether or not this favorite was generated from a template." + }, + "UserId": { + "type": "string", + "readOnly": true, + "description": "Unique user id of the specific user that owns this favorite." + } + } + } + }, + "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", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "FavoriteTypeParameter": { + "name": "favoriteType", + "in": "query", + "required": false, + "type": "string", + "default": "shared", + "enum": [ + "shared", + "user" + ], + "x-ms-enum": { + "name": "FavoriteType", + "modelAsString": false + }, + "description": "The type of favorite. Value can be either shared or user.", + "x-ms-parameter-location": "method" + }, + "FavoriteIdParameter": { + "name": "favoriteId", + "in": "path", + "required": true, + "type": "string", + "description": "The Id of a specific favorite defined in the Application Insights component", + "x-ms-parameter-location": "method" + }, + "SourceTypeParameter": { + "name": "sourceType", + "in": "query", + "required": false, + "type": "string", + "allowEmptyValue": true, + "enum": [ + "retention", + "notebook", + "sessions", + "events", + "userflows", + "funnel", + "impact", + "segmentation" + ], + "x-ms-enum": { + "name": "FavoriteSourceType", + "modelAsString": true + }, + "description": "Source type of favorite to return. When left out, the source type defaults to 'other' (not present in this enum).", + "x-ms-parameter-location": "method" + }, + "CanFetchFavoriteContentParameter": { + "name": "canFetchContent", + "in": "query", + "required": false, + "type": "boolean", + "description": "Flag indicating whether or not to return the full content for each applicable favorite. If false, only return summary content for favorites.", + "x-ms-parameter-location": "method" + }, + "TagsFilterParameter": { + "name": "tags", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "description": "Tags that must be present on each favorite returned.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json new file mode 100644 index 000000000000..c370669caaab --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json @@ -0,0 +1,139 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for web test locations.", + "version": "2015-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/syntheticmonitorlocations": { + "get": { + "description": "Gets a list of web test locations available to this Application Insights component.", + "operationId": "webTestLocations_List", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more web test location names available to the Application Insights component.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsWebTestLocationsListResult" + } + } + }, + "x-ms-examples": { + "WebTestLocationsList": { + "$ref": "./examples/WebTestLocationsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "ApplicationInsightsWebTestLocationsListResult": { + "description": "Describes the list of web test locations available to an Application Insights Component.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of web test locations.", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponentWebTestLocation" + } + } + } + }, + "ApplicationInsightsComponentWebTestLocation": { + "description": "Properties that define a web test location available to an Application Insights Component.", + "type": "object", + "properties": { + "DisplayName": { + "type": "string", + "readOnly": true, + "description": "The display name of the web test location." + }, + "Tag": { + "type": "string", + "readOnly": true, + "description": "Internally defined geographic location tag." + } + } + } + }, + "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", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/webTests_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json similarity index 98% rename from specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/webTests_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json index 190f2d006479..1836f46b2876 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/stable/2015-05-01/webTests_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/webtests": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/webtests": { "get": { "description": "Get all Application Insights web tests defined within a specified resource group.", "operationId": "WebTests_ListByResourceGroup", @@ -67,7 +67,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/webtests/{webTestName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/webtests/{webTestName}": { "get": { "description": "Get a specific Application Insights web test definition.", "operationId": "WebTests_Get", @@ -214,7 +214,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/microsoft.insights/webtests": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/webtests": { "get": { "description": "Get all Application Insights web test alerts definitioned within a subscription.", "operationId": "WebTests_List", diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index da7b6fdfb534..1b7cc532ca0f 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -29,38 +29,38 @@ title: ApplicationInsightsManagementClient description: Composite Swagger for Application Insights Management Client openapi-type: arm tag: package-2015-05 -azure-validator: true ``` ## Suppression ``` yaml directive: - suppress: TrackedResourceListByImmediateParent - reason: we do have a list api to get all export configuraitons as "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration" - #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration/{exportId} + where: + - $.definitions + reason: + - we do have list operations available for our operations on individual instances of objects returned. False positives. - suppress: PutRequestResponseScheme reason: This api was existing there from 2015, it will break existing client if we change the request/response format #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration/{exportId}"].put + # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}"].put - suppress: ListInOperationName reason: The return value is an object, not an array. Looks like a false positive of the validation tool. #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/currentbillingfeatures"].get.operationId + # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures"].get.operationId - suppress: PutInOperationName reason: We are not doing create on this api, it is only doing update in this PUT api call. #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration/{exportId}"].put.operationId - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/currentbillingfeatures"].put.operationId + # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}"].put.operationId + # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures"].put.operationId - suppress: XmsResourceInPutResponse reason: This api was existing there from 2015, it will break existing client if we change the request/response format #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/exportconfiguration/{exportId}"].put - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/currentbillingfeatures"].put + # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}"].put + # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures"].put - suppress: RequiredPropertiesMissingInResourceModel reason: This api was existing there from 2015, it will break existing client if we change the response format @@ -83,9 +83,27 @@ directive: # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.StopSendNotificationWhenHitCap # - $.definitions.ApplicationInsightsComponentQuotaStatus.properties.ShouldBeThrottled + - suppress: DescriptionAndTitleMissing + reason: Error addresses missing description/title in inner reference. Referenced model contains title and description. Redundant. + from: componentAnnotations_API.json + where: + - $.definitions.AnnotationError.properties.innererror + + - suppress: DescriptionAndTitleMissing + reason: Error addresses missing description/title in inner reference. Referenced model contains title and description. Redundant. + from: componentWorkItemConfigs_API.json + where: + - $.definitions.WorkItemConfigurationError.properties.innererror + + - suppress: LROStatusCodesReturnTypeSchema + reason: The response for 200 does define a schema in place. The test likely expects a 'ref' member. False failure. + from: componentAnnotations_API.json + where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/Annotations"].put.responses["200"] + - suppress: DefinitionsPropertiesNamesCamelCase reason: This api was existing there from 2015, it will break existing client if we change the name - #where: + # where: # - $.definitions.ApplicationInsightsComponentProperties.properties.ApplicationId # - $.definitions.ApplicationInsightsComponentProperties.properties.AppId # - $.definitions.ApplicationInsightsComponentProperties.properties.Application_Type @@ -155,13 +173,52 @@ directive: # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.RuleDefinitions # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.Name # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.Name - # - $.definitions.Annotation.AnnotationName - # - $.definitions.Annotation.EventTime - # - $.definitions.Annotation.Category - # - $.definitions.Annotation.Id - # - $.definitions.Annotation.Properties - # - $.definitions.Annotation.RelatedAnnotation - + # - $.definitions.ApplicationInsightsComponentWebTestLocation.properties.Tag + # - $.definitions.ApplicationInsightsComponentWebTestLocation.properties.DisplayName + # - $.definitions.ApplicationInsightsComponentFavorite.properties.UserId + # - $.definitions.ApplicationInsightsComponentFavorite.properties.IsGeneratedFromTemplate + # - $.definitions.ApplicationInsightsComponentFavorite.properties.Category + # - $.definitions.ApplicationInsightsComponentFavorite.properties.Tags + # - $.definitions.ApplicationInsightsComponentFavorite.properties.TimeModified + # - $.definitions.ApplicationInsightsComponentFavorite.properties.SourceType + # - $.definitions.ApplicationInsightsComponentFavorite.properties.FavoriteType + # - $.definitions.ApplicationInsightsComponentFavorite.properties.FavoriteId + # - $.definitions.ApplicationInsightsComponentFavorite.properties.Version + # - $.definitions.ApplicationInsightsComponentFavorite.properties.Config + # - $.definitions.ApplicationInsightsComponentFavorite.properties.Name + # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.MeterRateFrequency + # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.MeterId + # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Unit + # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Value + # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Description + # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Name + # - $.definitions.ApplicationInsightsComponentFeature.properties.SupportedAddonFeatures + # - $.definitions.ApplicationInsightsComponentFeature.properties.IsMainFeature + # - $.definitions.ApplicationInsightsComponentFeature.properties.Title + # - $.definitions.ApplicationInsightsComponentFeature.properties.Capabilities + # - $.definitions.ApplicationInsightsComponentFeature.properties.IsHidden + # - $.definitions.ApplicationInsightsComponentFeature.properties.ResouceId + # - $.definitions.ApplicationInsightsComponentFeature.properties.MeterRateFrequency + # - $.definitions.ApplicationInsightsComponentFeature.properties.MeterId + # - $.definitions.ApplicationInsightsComponentFeature.properties.FeatureName + # - $.definitions.ApplicationInsightsComponentAvailableFeatures.properties.Result + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ThrottleRate + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.DailyCapResetTime + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.DailyCap + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.TrackingType + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ApiAccessLevel + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.SupportExportData + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.BurstThrottlePolicy + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.MetadataClass + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.LiveStreamMetrics + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ApplicationMap + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.WorkItemIntegration + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.PowerBIIntegration + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.OpenSchema + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ProactiveDetection + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.AnalyticsIntegration + # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.MultipleStepWebTest + - suppress: R2066 reason: There are a bug in this rule. "ExportConfigurations_Create" is a valid operation id. ``` @@ -172,15 +229,17 @@ These settings apply only when `--tag=package-2015-05` is specified on the comma ``` yaml $(tag) == 'package-2015-05' input-file: -- microsoft.insights/stable/2015-05-01/aiOperations_API.json -- microsoft.insights/stable/2015-05-01/components_API.json -- microsoft.insights/stable/2015-05-01/webTests_API.json -- microsoft.insights/stable/2015-05-01/componentContinuousExport_API.json -- microsoft.insights/stable/2015-05-01/componentProactiveDetection_API.json -- microsoft.insights/stable/2015-05-01/componentFeaturesAndPricing_API.json -- microsoft.insights/stable/2015-05-01/componentApiKeys_API.json -- microsoft.insights/stable/2015-05-01/componentAnnotations_API.json -- microsoft.insights/stable/2015-05-01/componentWorkItemConfigs_API.json +- 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/components_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 ``` --- # Code Generation @@ -284,3 +343,23 @@ java: payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-applicationinsights ``` + +### Tag: schema-2015-05-preview + +These settings apply only when `--tag=schema-2015-05-01` is specified on the +command line. + +This section contains the input swagger files that are used when generating +resource manager schemas for version 2015-05-01. Note that many of our +pre-existing APIs are note currently compatible with ARM schemas, upon any +updates applied to our services we will bring them up to compliance. + +``` yaml $(tag) == 'schema-2015-05-01' +input-file: + - ./Microsoft.Insights/stable/2015-05-01/aiOperations_API.json + - ./Microsoft.Insights/stable/2015-05-01/components_API.json + - ./Microsoft.Insights/stable/2015-05-01/webTests_API.json + +override-info: + title: ApplicationInsightsManagementClient +``` \ No newline at end of file diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json index 007b8c3c32aa..4651046b3edc 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json @@ -971,6 +971,10 @@ "roleName": { "type": "string", "description": "Returns role definition with the specific name." + }, + "type": { + "type": "string", + "description": "Returns role definition with the specific type." } }, "description": "Role Definitions filter" diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/definitions.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/definitions.json index 70f0613dbbaf..fb93dc1da800 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/definitions.json +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/definitions.json @@ -1059,14 +1059,16 @@ "description": "The name of the automation account.", "type": "string", "required": true, - "in": "path" + "in": "path", + "x-ms-parameter-location": "client" }, "clientRequestId": { "name": "clientRequestId", "description": "Identifies this specific client request.", "type": "string", "required": false, - "in": "header" + "in": "header", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json index 85e5753cf5b0..b783d92b8648 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json @@ -117,13 +117,13 @@ "$ref": "../../stable/2015-10-31/definitions.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/automationAccountName" + "$ref": "./definitions.json#/parameters/automationAccountName" }, { "$ref": "../../stable/2015-10-31/definitions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/clientRequestId" + "$ref": "./definitions.json#/parameters/clientRequestId" }, { "name": "$filter", diff --git a/specification/automation/resource-manager/readme.md b/specification/automation/resource-manager/readme.md index 83ef0463b25f..be6a5858d5a8 100644 --- a/specification/automation/resource-manager/readme.md +++ b/specification/automation/resource-manager/readme.md @@ -186,7 +186,7 @@ These settings apply only when `--tag=package-2017-05-preview --go` is specified Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2017-05-preview' && $(go) -output-folder: $(go-sdk-folder)/services/automation/mgmt/2017-05-15-preview +output-folder: $(go-sdk-folder)/services/automation/mgmt/2017-05-15-preview/automation ``` diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billing.json new file mode 100644 index 000000000000..ff1478cd331a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billing.json @@ -0,0 +1,699 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-03-01-preview", + "title": "BillingManagementClient", + "description": "Billing client provides access to billing resources for Azure subscriptions." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Billing/enrollmentAccounts": { + "get": { + "tags": [ + "EnrollmentAccounts" + ], + "x-ms-examples": { + "EnrollmentAccountsList": { + "$ref": "./examples/EnrollmentAccountsList.json" + } + }, + "operationId": "EnrollmentAccounts_List", + "description": "Lists the enrollment accounts the caller has access to.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnrollmentAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/enrollmentAccounts/{name}": { + "get": { + "tags": [ + "EnrollmentAccounts" + ], + "x-ms-examples": { + "EnrollmentAccountsGet": { + "$ref": "./examples/EnrollmentAccountsGet.json" + } + }, + "operationId": "EnrollmentAccounts_Get", + "description": "Gets a enrollment account by name.", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Enrollment Account name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnrollmentAccountResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods": { + "get": { + "tags": [ + "BillingPeriods" + ], + "operationId": "BillingPeriods_List", + "description": "Lists the available billing periods for a subscription in reverse chronological order. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "externalDocs": { + "url": "https://go.microsoft.com/fwlink/?linkid=844490" + }, + "x-ms-examples": { + "BillingPeriodsList": { + "$ref": "./examples/BillingPeriodsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter billing periods by billingPeriodEndDate. 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" + }, + { + "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 billing periods.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 100 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BillingPeriodsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}": { + "get": { + "tags": [ + "BillingPeriods" + ], + "operationId": "BillingPeriods_Get", + "description": "Gets a named billing period. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "x-ms-examples": { + "BillingPeriodsGet": { + "$ref": "./examples/BillingPeriodsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "billingPeriodName", + "description": "The name of a BillingPeriod resource.", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BillingPeriod" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/invoices": { + "get": { + "tags": [ + "Invoices" + ], + "operationId": "Invoices_List", + "description": "Lists the available invoices for a subscription in reverse chronological order beginning with the most recent invoice. In preview, invoices are available via this API only for invoice periods which end December 1, 2016 or later. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "externalDocs": { + "url": "https://go.microsoft.com/fwlink/?linkid=842057" + }, + "x-ms-examples": { + "InvoicesList": { + "$ref": "./examples/InvoicesList.json" + }, + "InvoicesExpand": { + "$ref": "./examples/InvoicesExpand.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the downloadUrl property within a list of invoices. This enables download links to be generated for multiple invoices at once. By default, downloadURLs are not included when listing invoices.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "description": "May be used to filter invoices by invoicePeriodEndDate. 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" + }, + { + "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 invoices.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 100 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/InvoicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/invoices/{invoiceName}": { + "get": { + "tags": [ + "Invoices" + ], + "operationId": "Invoices_Get", + "description": "Gets a named invoice resource. When getting a single invoice, the downloadUrl property is expanded automatically. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "x-ms-examples": { + "InvoicesGet": { + "$ref": "./examples/InvoicesGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "invoiceName", + "description": "The name of an invoice resource.", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/invoices/latest": { + "get": { + "tags": [ + "Invoices" + ], + "operationId": "Invoices_GetLatest", + "description": "Gets the most recent invoice. When getting a single invoice, the downloadUrl property is expanded automatically. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "x-ms-examples": { + "InvoicesGetLatest": { + "$ref": "./examples/InvoicesGetLatest.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available billing 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": { + "EnrollmentAccountResult": { + "description": "An enrollment account resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "An enrollment account.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnrollmentAccountProperties" + } + } + }, + "EnrollmentAccountListResult": { + "description": "Result of listing enrollment accounts.", + "properties": { + "value": { + "description": "The list of enrollment accounts.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EnrollmentAccountResult" + } + } + } + }, + "EnrollmentAccountProperties": { + "description": "The properties of the enrollment account.", + "properties": { + "principalName": { + "description": "The account owner's principal name.", + "type": "string", + "readOnly": true + } + } + }, + "BillingPeriod": { + "description": "A billing period resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "A billing period.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/BillingPeriodProperties" + } + } + }, + "BillingPeriodsListResult": { + "description": "Result of listing billing periods. It contains a list of available billing periods in reverse chronological order.", + "properties": { + "value": { + "description": "The list of billing periods.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/BillingPeriod" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "BillingPeriodProperties": { + "description": "The properties of the billing period.", + "properties": { + "billingPeriodStartDate": { + "description": "The start of the date range covered by the billing period.", + "type": "string", + "format": "date", + "readOnly": true + }, + "billingPeriodEndDate": { + "description": "The end of the date range covered by the billing period.", + "type": "string", + "format": "date", + "readOnly": true + }, + "invoiceIds": { + "description": "Array of invoice ids that associated with.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "DownloadUrl": { + "description": "A secure URL that can be used to download a PDF invoice until the URL expires.", + "properties": { + "expiryTime": { + "description": "The time in UTC at which this download URL will expire.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "url": { + "description": "The URL to the PDF file.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorDetails": { + "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 + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorResponse": { + "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": "#/definitions/ErrorDetails" + } + } + }, + "Invoice": { + "description": "An invoice resource can be used download a PDF version of an invoice.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "An invoice.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InvoiceProperties" + } + } + }, + "InvoicesListResult": { + "description": "Result of listing invoices. It contains a list of available invoices in reverse chronological order.", + "properties": { + "value": { + "description": "The list of invoices.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Invoice" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "InvoiceProperties": { + "description": "The properties of the invoice.", + "properties": { + "downloadUrl": { + "description": "A secure link to download the PDF version of an invoice. The link will cease to work after its expiry time is reached.", + "$ref": "#/definitions/DownloadUrl" + }, + "invoicePeriodStartDate": { + "description": "The start of the date range covered by the invoice.", + "type": "string", + "format": "date", + "readOnly": true + }, + "invoicePeriodEndDate": { + "description": "The end of the date range covered by the invoice.", + "type": "string", + "format": "date", + "readOnly": true + }, + "billingPeriodIds": { + "description": "Array of billing perdiod ids that the invoice is attributed to.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "Operation": { + "description": "A Billing 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: Microsoft.Billing.", + "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 + } + } + } + } + }, + "OperationListResult": { + "description": "Result listing billing operations. It contains a list of 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.", + "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 + } + } + }, + "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." + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "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 2018-03-01-preview." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/BillingPeriodsGet.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/BillingPeriodsGet.json new file mode 100644 index 000000000000..0efed6df4954 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/BillingPeriodsGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "billingPeriodName": "201702-1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "name": "201702-1", + "type": "Microsoft.Billing/billingPeriods", + "properties": { + "billingPeriodStartDate": "2017-01-01", + "billingPeriodEndDate": "2017-02-01", + "invoiceIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-01-05-987654321" + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/BillingPeriodsList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/BillingPeriodsList.json new file mode 100644 index 000000000000..916da674a06f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/BillingPeriodsList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "name": "201702-1", + "type": "Microsoft.Billing/billingPeriods", + "properties": { + "billingPeriodStartDate": "2017-01-01", + "billingPeriodEndDate": "2017-02-01", + "invoiceIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-01-05-987654321" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/EnrollmentAccountsGet.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/EnrollmentAccountsGet.json new file mode 100644 index 000000000000..47aad7a49983 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/EnrollmentAccountsGet.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "name": "e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "name": "e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "type": "Microsoft.Billing/enrollmentAccounts", + "properties": { + "principalName": "kathy@contoso.com" + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/EnrollmentAccountsList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/EnrollmentAccountsList.json new file mode 100644 index 000000000000..1e6272f16292 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/EnrollmentAccountsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "name": "e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "type": "Microsoft.Billing/enrollmentAccounts", + "properties": { + "principalName": "kathy@contoso.com" + } + }, + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/edd24053-07cd-4ed4-aa5b-326160a6680d", + "name": "edd24053-07cd-4ed4-aa5b-326160a6680d", + "type": "Microsoft.Billing/enrollmentAccounts", + "properties": { + "principalName": "dan@contoso.com" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesExpand.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesExpand.json new file mode 100644 index 000000000000..edc75d2c4c91 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesExpand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "$top": 1, + "$filter": "invoicePeriodStartDate le 2017-02-01", + "$expand": "downloadUrl" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ], + "downloadUrl": { + "expiryTime": "2017-02-13T20:46:30Z", + "url": "https://microsoft.com" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesGet.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesGet.json new file mode 100644 index 000000000000..d90e95dded1f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "invoiceName": "2017-02-05-123456789" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ], + "downloadUrl": { + "expiryTime": "2017-02-13T20:46:30Z", + "url": "https://microsoft.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesGetLatest.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesGetLatest.json new file mode 100644 index 000000000000..c6b2b4d2f34e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesGetLatest.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ], + "downloadUrl": { + "expiryTime": "2017-02-13T20:46:30Z", + "url": "https://microsoft.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesList.json new file mode 100644 index 000000000000..293a1cb07119 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/examples/InvoicesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/readme.md b/specification/billing/resource-manager/readme.md index 288f79007011..f109773a36fe 100644 --- a/specification/billing/resource-manager/readme.md +++ b/specification/billing/resource-manager/readme.md @@ -26,10 +26,19 @@ These are the global settings for the Billing API. ``` yaml openapi-type: arm -tag: package-2017-04-preview +tag: package-2018-03-preview ``` +### Tag: package-2018-03-preview + +These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-03-preview' +input-file: +- Microsoft.Billing/preview/2018-03-01-preview/billing.json +``` + ### Tag: package-2017-04-preview These settings apply only when `--tag=package-2017-04-preview` is specified on the command line. @@ -121,10 +130,20 @@ go: ### Go multi-api ``` yaml $(go) && $(multiapi) batch: + - tag: package-2018-03-preview - tag: package-2017-04-preview - tag: package-2017-02-preview ``` +### Tag: package-2018-03-preview and go + +These settings apply only when `--tag=package-2018-03-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-03-preview' && $(go) +output-folder: $(go-sdk-folder)/services/billing/mgmt/2018-03-01-preview/billing +``` + ### Tag: package-2017-04-preview and go These settings apply only when `--tag=package-2017-04-preview --go` is specified on the command line. diff --git a/specification/cdn/resource-manager/readme.csharp.md b/specification/cdn/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..6cb46ecf1d55 --- /dev/null +++ b/specification/cdn/resource-manager/readme.csharp.md @@ -0,0 +1,14 @@ +## 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.Cdn + payload-flattening-threshold: 2 + output-folder: $(csharp-sdks-folder)/Cdn/Management.Cdn/Generated + clear-output-folder: true +``` diff --git a/specification/cdn/resource-manager/readme.go.md b/specification/cdn/resource-manager/readme.go.md new file mode 100644 index 000000000000..10afebd50bb0 --- /dev/null +++ b/specification/cdn/resource-manager/readme.go.md @@ -0,0 +1,66 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: cdn + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2017-10 + - tag: package-2017-04 + - tag: package-2016-10 + - tag: package-2016-04 + - tag: package-2015-06 +``` + +### Tag: package-2017-10 and go + +These settings apply only when `--tag=package-2017-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-10' && $(go) +output-folder: $(go-sdk-folder)/services/cdn/mgmt/2017-10-12/cdn +``` + +### Tag: package-2017-04 and go + +These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-04' && $(go) +output-folder: $(go-sdk-folder)/services/cdn/mgmt/2017-04-02/cdn +``` + +### Tag: package-2016-10 and go + +These settings apply only when `--tag=package-2016-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2016-10' && $(go) +output-folder: $(go-sdk-folder)/services/cdn/mgmt/2016-10-02/cdn +``` + +### Tag: package-2016-04 and go + +These settings apply only when `--tag=package-2016-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2016-04' && $(go) +output-folder: $(go-sdk-folder)/services/cdn/mgmt/2016-04-02/cdn +``` + +### Tag: package-2015-06 and go + +These settings apply only when `--tag=package-2015-06 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2015-06' && $(go) +output-folder: $(go-sdk-folder)/services/cdn/mgmt/2015-06-01/cdn +``` diff --git a/specification/cdn/resource-manager/readme.java.md b/specification/cdn/resource-manager/readme.java.md new file mode 100644 index 000000000000..a007070f0c23 --- /dev/null +++ b/specification/cdn/resource-manager/readme.java.md @@ -0,0 +1,14 @@ +## 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 + fluent: true + namespace: com.microsoft.azure.management.cdn + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-cdn +``` diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index 45d256028d5a..ae4d46782003 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the Cdn API. ``` yaml openapi-type: arm -tag: package-2017-04 +tag: package-2017-10 ``` ### Tag: package-2017-10 @@ -89,131 +89,32 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-libraries-for-java - repo: azure-sdk-for-go + - repo: azure-sdk-for-net + - repo: azure-sdk-for-node + - repo: azure-sdk-for-ruby ``` ## C# -These settings apply only when `--csharp` is specified on the command line. -Please also specify `--csharp-sdks-folder=`. - -``` yaml $(csharp) -csharp: - # last generated with AutoRest.1.0.0-Nightly20170212 - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - namespace: Microsoft.Azure.Management.Cdn - payload-flattening-threshold: 2 - output-folder: $(csharp-sdks-folder)/Cdn/Management.Cdn/Generated - clear-output-folder: true -``` +See configuration in [readme.csharp.md](./readme.csharp.md) ## 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.cdn - package-name: azure-mgmt-cdn - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt-cdn/azure/mgmt/cdn -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/azure-mgmt-cdn -``` +See configuration in [readme.python.md](./readme.python.md) ## Go -These settings apply only when `--go` is specified on the command line. - -``` yaml $(go) -go: - license-header: MICROSOFT_APACHE_NO_VERSION - namespace: cdn - clear-output-folder: true -``` - -### Go multi-api - -``` yaml $(go) && $(multiapi) -batch: - - tag: package-2017-10 - - tag: package-2017-04 - - tag: package-2016-10 - - tag: package-2016-04 - - tag: package-2015-06 -``` - -### Tag: package-2017-10 and go - -These settings apply only when `--tag=package-2017-10 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2017-10' && $(go) -output-folder: $(go-sdk-folder)/services/cdn/mgmt/2017-10-12/cdn -``` - -### Tag: package-2017-04 and go - -These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. +See configuration in [readme.go.md](./readme.go.md) -``` yaml $(tag) == 'package-2017-04' && $(go) -output-folder: $(go-sdk-folder)/services/cdn/mgmt/2017-04-02/cdn -``` - -### Tag: package-2016-10 and go - -These settings apply only when `--tag=package-2016-10 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2016-10' && $(go) -output-folder: $(go-sdk-folder)/services/cdn/mgmt/2016-10-02/cdn -``` - -### Tag: package-2016-04 and go - -These settings apply only when `--tag=package-2016-04 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2016-04' && $(go) -output-folder: $(go-sdk-folder)/services/cdn/mgmt/2016-04-02/cdn -``` +## Java -### Tag: package-2015-06 and go +See configuration in [readme.java.md](./readme.java.md) -These settings apply only when `--tag=package-2015-06 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. +## Node -``` yaml $(tag) == 'package-2015-06' && $(go) -output-folder: $(go-sdk-folder)/services/cdn/mgmt/2015-06-01/cdn -``` +See configuration in [readme.node.md](./readme.node.md) +## Ruby -## 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 - fluent: true - namespace: com.microsoft.azure.management.cdn - license-header: MICROSOFT_MIT_NO_CODEGEN - payload-flattening-threshold: 1 - output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-cdn -``` +See configuration in [readme.ruby.md](./readme.ruby.md) diff --git a/specification/cdn/resource-manager/readme.nodejs.md b/specification/cdn/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..de91312a36b4 --- /dev/null +++ b/specification/cdn/resource-manager/readme.nodejs.md @@ -0,0 +1,13 @@ +## Node + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + package-name: azure-arm-cdn + output-folder: $(node-sdks-folder)/lib/services/cdnManagement/lib +``` diff --git a/specification/cdn/resource-manager/readme.python.md b/specification/cdn/resource-manager/readme.python.md new file mode 100644 index 000000000000..b7910d6685b0 --- /dev/null +++ b/specification/cdn/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.cdn + package-name: azure-mgmt-cdn + package-version: 2.0.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-cdn/azure/mgmt/cdn +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-cdn +``` diff --git a/specification/cdn/resource-manager/readme.ruby.md b/specification/cdn/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..3de075ff9d48 --- /dev/null +++ b/specification/cdn/resource-manager/readme.ruby.md @@ -0,0 +1,71 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml $(ruby) +ruby: + package-name: azure_mgmt_cdn + package-version": "0.16.0" +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2017-10 + - tag: package-2017-04 + - tag: package-2016-10 + - tag: package-2016-04 + - tag: package-2015-06 +``` + +### Tag: package-2017-10 and ruby + +These settings apply only when `--tag=package-2017-10 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2017-10' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2017_10_23" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib/2017-10-12 +``` + + +### Tag: package-2017-04 and ruby + +These settings apply only when `--tag=package-2017-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2017-04' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2017_04_02" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib/2017-04-02 +``` + +### Tag: package-2016-10 and ruby + +These settings apply only when `--tag=package-2016-10 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2016-10' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2016_10_02" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib/2016-10-02 +``` + +### Tag: package-2016-04 and ruby + +These settings apply only when `--tag=package-2016-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2016-04' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2016_04_02" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib/2016-04-02 +``` + +### Tag: package-2015-06 and ruby + +These settings apply only when `--tag=package-2015-06 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2015-06' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2015_06_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib/2015-06-01 +``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md index fca9e260742d..9b927a5d5058 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md @@ -47,7 +47,7 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION azure-arm: false namespace: Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction - output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/Vision/Vision/Generated/CustomVision/Prediction + output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/Vision/CustomVision/Prediction/Generated clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v1.1/Prediction.json b/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v1.1/Prediction.json index abd0a213fc87..869bd4db872f 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v1.1/Prediction.json +++ b/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v1.1/Prediction.json @@ -379,7 +379,8 @@ "in": "header", "required": true, "type": "string", - "x-ms-client-name": "ApiKey" + "x-ms-client-name": "ApiKey", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md index 01c52b82bd78..19f88be1e105 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md @@ -47,7 +47,7 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION azure-arm: false namespace: Microsoft.Azure.CognitiveServices.Vision.CustomVision.Training - output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/Vision/Vision/Generated/CustomVision/Training + output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/Vision/CustomVision/Training/Generated clear-output-folder: true ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v1.2/Training.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v1.2/Training.json index c1d7e9435534..ab61c03bcfde 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v1.2/Training.json +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v1.2/Training.json @@ -2923,7 +2923,8 @@ "in": "header", "required": true, "type": "string", - "x-ms-client-name": "ApiKey" + "x-ms-client-name": "ApiKey", + "x-ms-parameter-location": "client" } } } \ No newline at end of file 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 a8d606b3606a..bc9ecdea3013 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 @@ -512,9 +512,67 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/usages": { + "get": { + "tags": [ + "CognitiveServicesAccounts" + ], + "description": "Get usages for the requested Cognitive Services account", + "x-ms-examples": { + "Get Usages": { + "$ref": "./examples/GetUsages.json" + } + }, + "operationId": "Accounts_GetUsages", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription." + }, + { + "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/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for Cognitive Services account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, "/providers/Microsoft.CognitiveServices/operations": { "get": { - "tags": [ "Operations" ], + "tags": [ + "Operations" + ], "description": "Lists all the available Cognitive Services account operations.", "operationId": "Operations_List", "x-ms-examples": { @@ -543,7 +601,9 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/locations/{location}/checkSkuAvailability": { "post": { - "tags": [ "CognitiveServicesAccounts" ], + "tags": [ + "CognitiveServicesAccounts" + ], "operationId": "CheckSkuAvailability_List", "description": "Check available SKUs.", "x-ms-examples": { @@ -622,24 +682,21 @@ "type": "string", "description": "Required. Indicates the type of cognitive service account.", "enum": [ - "Academic", - "Bing.Autosuggest", "Bing.Autosuggest.v7", "Bing.CustomSearch", - "Bing.Search", "Bing.Search.v7", "Bing.Speech", - "Bing.SpellCheck", "Bing.SpellCheck.v7", "ComputerVision", "ContentModerator", "CustomSpeech", + "CustomVision.Prediction", + "CustomVision.Training", "Emotion", "Face", "LUIS", - "Recommendations", + "QnAMaker", "SpeakerRecognition", - "Speech", "SpeechTranslation", "TextAnalytics", "TextTranslation", @@ -869,6 +926,102 @@ }, "description": "Cognitive Services resource type and SKU." }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for Cognitive Service account." + } + }, + "description": "The response to a list usage request." + }, + "Usage": { + "properties": { + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "name": { + "$ref": "#/definitions/MetricName", + "readOnly": true, + "description": "The name information for the metric." + }, + "quotaPeriod": { + "type": "string", + "readOnly": true, + "description": "The quota period used to summarize the usage values." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Maximum value for this metric." + }, + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Current value for this metric." + }, + "nextResetTime": { + "type": "string", + "readOnly": true, + "description": "Next reset time for current quota." + }, + "status": { + "type": "string", + "description": "Cognitive Services account quota usage status.", + "enum": [ + "Included", + "Blocked", + "InOverage", + "Unknown" + ], + "x-ms-enum": { + "name": "QuotaUsageStatus", + "modelAsString": true + } + } + }, + "description": "The usage data for a usage request." + }, + "MetricName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the metric." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The friendly name of the metric." + } + }, + "description": "A metric name." + }, + "UnitType": { + "type": "string", + "readOnly": true, + "description": "The unit of the metric.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond", + "Milliseconds" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "UnitType" + } + }, "Error": { "properties": { "error": { @@ -1045,6 +1198,14 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "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": "client" } } } \ No newline at end of file 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 new file mode 100644 index 000000000000..bcfbe8300d37 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2017-04-18", + "subscriptionId": "5a4f5c2e-6983-4ccb-bd34-2196d5b5bbd3", + "resourceGroupName": "felixwa-01", + "accountName": "TestUsage02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": { + "value": "Face.Transactions", + "localizedValue": "Face.Transactions" + }, + "status": "Included", + "currentValue": 3, + "limit": 30000, + "nextResetTime": "2018-03-28T09:33:51Z", + "quotaPeriod": "30.00:00:00", + "unit": "Count" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/resource-manager/readme.md b/specification/cognitiveservices/resource-manager/readme.md index a03589efadf3..8730d2fed534 100644 --- a/specification/cognitiveservices/resource-manager/readme.md +++ b/specification/cognitiveservices/resource-manager/readme.md @@ -120,22 +120,6 @@ output-folder: $(go-sdk-folder)/services/cognitiveservices/mgmt/2016-02-01-previ ``` -## 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 - fluent: true - namespace: com.microsoft.azure.management.advisor - license-header: MICROSOFT_MIT_NO_CODEGEN - payload-flattening-threshold: 1 - output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-advisor -``` - - ## Java These settings apply only when `--java` is specified on the command line. diff --git a/specification/common-types/resource-management/v1/types.json b/specification/common-types/resource-management/v1/types.json index d1322974e187..1d43a0a1649a 100644 --- a/specification/common-types/resource-management/v1/types.json +++ b/specification/common-types/resource-management/v1/types.json @@ -279,7 +279,8 @@ "description": "The name of the resource group. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, - "maxLength": 90 + "maxLength": 90, + "x-ms-parameter-location": "client" } } } \ No newline at end of file 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 5b5fa6164938..07bac4dfc5e1 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 @@ -2689,6 +2689,110 @@ "x-ms-long-running-operation": true } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Redeploy", + "description": "Redeploy 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", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "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.", + "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", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": { "post": { "tags": [ @@ -3583,6 +3687,106 @@ "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": "Redeploys 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", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "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", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": { "post": { "tags": [ @@ -4502,7 +4706,7 @@ ], "x-ms-enum": { "name": "DiskCreateOptionTypes", - "modelAsString": false + "modelAsString": true } }, "StorageAccountType": { @@ -4514,7 +4718,7 @@ ], "x-ms-enum": { "name": "StorageAccountTypes", - "modelAsString": false + "modelAsString": true } }, "ManagedDiskParameters": { @@ -5446,11 +5650,12 @@ "$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)." } }, - "required": [ - "osDisk" - ], "description": "Describes a storage profile." }, "ImageProperties": { @@ -6728,6 +6933,10 @@ "$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": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/disk.json new file mode 100644 index 000000000000..64f9a2b1e09e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/disk.json @@ -0,0 +1,1277 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2018-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.Compute/disks/{diskName}": { + "put": { + "tags": [ + "Disks" + ], + "operationId": "Disks_CreateOrUpdate", + "description": "Creates or updates a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Disk" + }, + "description": "Disk object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description":"Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Create an empty managed disk.": { + "$ref": "./examples/CreateAnEmptyManagedDisk.json" + }, + "Create a managed disk from a platform image.": { + "$ref": "./examples/CreateAManagedDiskFromAPlatformImage.json" + }, + "Create a managed disk from an existing managed disk in the same or different subscription.": { + "$ref": "./examples/CreateAManagedDiskFromAnExistingManagedDisk.json" + }, + "Create a managed disk by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a managed disk by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json" + }, + "Create a managed disk by copying a snapshot.": { + "$ref": "./examples/CreateAManagedDiskByCopyingASnapshot.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Update", + "description": "Updates (patches) a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskUpdate" + }, + "description": "Disk object supplied in the body of the Patch disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Gets information about a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Get information about a managed disk.": { + "$ref": "./examples/GetInformationAboutAManagedDisk.json" + } + } + }, + "delete": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Delete", + "description": "Deletes a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk is deleted, this is an expected error code." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_ListByResourceGroup", + "description": "Lists all the disks under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a resource group.": { + "$ref": "./examples/ListManagedDisksInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Lists all the disks under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a subscription.": { + "$ref": "./examples/ListManagedDisksInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_GrantAccess", + "description": "Grants access to a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_RevokeAccess", + "description": "Revokes access to a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": { + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "description": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "Snapshot object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Create a snapshot from an existing snapshot in the same or a different subscription.": { + "$ref": "./examples/CreateASnapshotFromAnExistingSnapshot.json" + }, + "Create a snapshot by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a snapshot by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "description": "Updates (patches) a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotUpdate" + }, + "description": "Snapshot object supplied in the body of the Patch snapshot operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "description": "Gets information about a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Get information about a snapshot.": { + "$ref": "./examples/GetInformationAboutASnapshot.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "description": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the snapshot is deleted, this is an expected error code." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "description": "Lists snapshots under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a resource group.": { + "$ref": "./examples/ListSnapshotsInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "description": "Lists snapshots under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a subscription.": { + "$ref": "./examples/ListSnapshotsInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_GrantAccess", + "description": "Grants access to a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get snapshot access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_RevokeAccess", + "description": "Revokes access to a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "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 + }, + "ResourceUpdate": { + "description": "The Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/DiskSku" + } + } + }, + "Disk": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + }, + "sku": { + "$ref": "#/definitions/DiskSku" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Logical zone list for Disk." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Disk resource." + }, + "DiskUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Disk update resource." + }, + "DiskList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Disk" + }, + "description": "A list of disks." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks." + } + }, + "required": [ + "value" + ], + "description": "The List Disks operation response." + }, + "DiskSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountTypes", + "modelAsString": true + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "default": "Standard", + "description": "The sku tier." + } + }, + "description": "The disks sku name. Can be Standard_LRS or Premium_LRS." + }, + "SnapshotSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SnapshotStorageAccountTypes", + "modelAsString": true + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "default": "Standard", + "description": "The sku tier." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS." + }, + "DiskProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "creationData": { + "$ref": "#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the VHD to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettings": { + "$ref": "#/definitions/EncryptionSettings", + "description": "Encryption settings for disk or snapshot" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "EncryptionSettings": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndSecretReference", + "description": "Key Vault Secret Url and vault id of the disk encryption key" + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "Key Vault Key Url and vault id of the key encryption key" + } + }, + "description": "Encryption settings for disk or snapshot" + }, + "KeyVaultAndSecretReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "KeyVaultAndKeyReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "SourceVault": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resoure id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "DiskUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the VHD to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettings": { + "$ref": "#/definitions/EncryptionSettings", + "description": "Encryption settings for disk or snapshot" + } + }, + "description": "Disk resource update properties." + }, + "CreationData": { + "properties": { + "createOption": { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore" + ], + "x-ms-enum": { + "name": "DiskCreateOption", + "modelAsString": true + }, + "description": "This enumerates the possible sources of a disk's creation." + }, + "storageAccountId": { + "type": "string", + "description": "If createOption is Import, the Azure Resource Manager identifier of the storage account containing the blob to import as a disk. Required only if the blob is in a different subscription" + }, + "imageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Disk source information." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "ImageDiskReference": { + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Imgage Repository or user image reference." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "GrantAccessData": { + "properties": { + "access": { + "type": "string", + "enum": [ + "None", + "Read" + ], + "x-ms-enum": { + "name": "AccessLevel", + "modelAsString": true + } + }, + "durationInSeconds": { + "type": "integer", + "format": "int32", + "description": "Time duration in seconds until the SAS access expires." + } + }, + "required": [ + "access", + "durationInSeconds" + ], + "description": "Data used for requesting a SAS." + }, + "AccessUri": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessUriOutput", + "description": "Operation output data (raw JSON)" + } + }, + "description": "A disk access SAS uri." + }, + "AccessUriOutput": { + "properties": { + "output": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessUriRaw", + "description": "Operation output data (raw JSON)" + } + }, + "description": "Azure properties, including output." + }, + "AccessUriRaw": { + "properties": { + "accessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a disk." + } + }, + "description": "This object gets 'bubbled up' through flattening." + }, + "Snapshot": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "Unused. Always Null." + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Snapshot resource." + }, + "SnapshotUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceUpdate" + } + ], + "description": "Snapshot update resource." + }, + "SnapshotList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "A list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "required": [ + "value" + ], + "description": "The List Snapshots operation response." + }, + "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." + }, + "OperationStatusResponse": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation ID" + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Operation status" + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the operation" + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the operation" + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/ApiError", + "description": "Api error" + } + }, + "description": "Operation status 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." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "DiskNameParameter": { + "name": "diskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The max name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByCopyingASnapshot.json new file mode 100644 index 000000000000..f038c2ed3416 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByCopyingASnapshot.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myDisk", + "disk": { + "name": "myDisk", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..13e14e61b6d8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myDisk", + "disk": { + "name": "myDisk", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..b489ce1c41a2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myDisk", + "disk": { + "name": "myDisk", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskFromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskFromAPlatformImage.json new file mode 100644 index 000000000000..8af51c1bc945 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskFromAPlatformImage.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myDisk", + "disk": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json new file mode 100644 index 000000000000..b0a2ef7cb5e7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myDisk2", + "disk": { + "name": "myDisk2", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..193a61334e06 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "snapshotName": "mySnapshot1", + "snapshot": { + "name": "mySnapshot1", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..c338bbcd7574 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "snapshotName": "mySnapshot1", + "snapshot": { + "name": "mySnapshot1", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotFromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotFromAnExistingSnapshot.json new file mode 100644 index 000000000000..d2dd7d2410e1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateASnapshotFromAnExistingSnapshot.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "snapshotName": "mySnapshot2", + "snapshot": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAnEmptyManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAnEmptyManagedDisk.json new file mode 100644 index 000000000000..62e581a1497d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAnEmptyManagedDisk.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myDisk", + "disk": { + "name": "myDisk", + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/GetInformationAboutAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/GetInformationAboutAManagedDisk.json new file mode 100644 index 000000000000..ae8f3d52c35d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/GetInformationAboutAManagedDisk.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "diskName": "myManagedDisk" + }, + "responses": { + "200": { + "body": { + "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec", + "sku": { + "name": "Standard_LRS" + }, + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/GetInformationAboutASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/GetInformationAboutASnapshot.json new file mode 100644 index 000000000000..36b70f651f11 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/GetInformationAboutASnapshot.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "snapshotName": "mySnapshot" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 100, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListManagedDisksInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListManagedDisksInAResourceGroup.json new file mode 100644 index 000000000000..052aded24de6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListManagedDisksInAResourceGroup.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskSizeGB": 200, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} \ No newline at end of file diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListManagedDisksInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListManagedDisksInASubscription.json new file mode 100644 index 000000000000..5644bdedb9dd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListManagedDisksInASubscription.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "subscriptionId":"{subscription-id}", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType":"Windows", + "creationData": { + "createOption":"Copy", + "sourceResourceId":"subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "diskSizeGB":200, + "encryptionSettings": { + "enabled":true, + "diskEncryptionKey": { + "sourceVault": { + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl":"https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl":"https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated":"2016-12-28T04:41:35.9278721+00:00", + "provisioningState":"Succeeded" + }, + "type":"Microsoft.Compute/disks", + "location":"westus", + "tags": { + "department":"Development", + "project":"ManagedDisks" + }, + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1", + "name":"myManagedDisk1" + }, + { + "properties": { + "osType":"Windows", + "creationData": { + "createOption":"Empty" + }, + "diskSizeGB":10, + "timeCreated":"2016-12-28T04:41:36.872242+00:00", + "provisioningState":"Succeeded" + }, + "type":"Microsoft.Compute/disks", + "location":"westus", + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2", + "name":"myManagedDisk2" + }, + { + "properties": { + "osType":"Windows", + "creationData": { + "createOption":"FromImage", + "imageReference": { + "id":"/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB":200, + "encryptionSettings": { + "enabled":true, + "diskEncryptionKey": { + "sourceVault": { + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl":"https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl":"https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated":"2016-12-28T04:41:36.3973934+00:00", + "provisioningState":"Succeeded" + }, + "type":"Microsoft.Compute/disks", + "location":"westus", + "tags": { + "department":"Development", + "project":"ManagedDisks" + }, + "id":"/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3", + "name":"myManagedDisk3" + } + ], + "nextLink":"http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } + } \ No newline at end of file diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListSnapshotsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListSnapshotsInAResourceGroup.json new file mode 100644 index 000000000000..890cb70381df --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListSnapshotsInAResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListSnapshotsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListSnapshotsInASubscription.json new file mode 100644 index 000000000000..6b167367b5dd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/ListSnapshotsInASubscription.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:47:30.6630569+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1", + "name": "mySnapshot1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 200, + "encryptionSettings": { + "enabled": true, + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "timeCreated": "2016-12-28T04:47:30.3247198+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2", + "name": "mySnapshot2" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index e2712e0dfa9b..48382d9923df 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the Compute API. title: ComputeManagementClient description: Compute Client openapi-type: arm -tag: package-2017-12 +tag: package-2018-04 directive: - where: @@ -107,6 +107,27 @@ directive: suppress: - RequiredPropertiesMissingInResourceModel ``` +### Tag: package-2018-04 + +These settings apply only when `--tag=package-2018-04` is specified on the command line. + +``` yaml $(tag) == 'package-2018-04' +input-file: +- Microsoft.Compute/stable/2017-12-01/compute.json +- Microsoft.Compute/stable/2017-12-01/runCommands.json +- Microsoft.Compute/stable/2017-09-01/skus.json +- Microsoft.Compute/stable/2018-04-01/disk.json +- Microsoft.ContainerService/stable/2017-01-31/containerService.json +``` + +### Tag: package-disks-2018-04 + +These settings apply only when `--tag=package-disks-2018-04` is specified on the command line. + +``` yaml $(tag) == 'package-disks-2018-04' +input-file: +- Microsoft.Compute/stable/2018-04-01/disk.json +``` ### Tag: package-2017-12 @@ -321,6 +342,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-disks-2018-04 - tag: package-2017-12 - tag: package-compute-2017-03 - tag: package-container-service-2017-01 @@ -332,6 +354,16 @@ batch: - tag: package-compute-2015-06 ``` +### Tag: package-disks-2018-04 and go + +These settings apply only when `--tag=package-disks-2018-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-disks-2018-04' && $(go) +namespace: compute +output-folder: $(go-sdk-folder)/services/compute/mgmt/2018-04-01/compute +``` + ### Tag: package-2017-12 and go These settings apply only when `--tag=package-2017-12 --go` is specified on the command line. @@ -443,6 +475,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-disks-2018-04 - tag: package-compute-only-2017-12 - tag: package-skus-2017-09 - tag: package-compute-2017-03 @@ -451,6 +484,17 @@ batch: - tag: package-compute-2015-06 ``` +### Tag: package-disks-2018-04 and python + +These settings apply only when `--tag=package-disks-2018-04 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-disks-2018-04' && $(python) +python: + namespace: azure.mgmt.compute.v2018_04_01 + output-folder: $(python-sdks-folder)/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01 +``` + ### Tag: package-compute-only-2017-12 and python These settings apply only when `--tag=package-compute-only-2017-12 --python` is specified on the command line. diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/preview/2017-12-30-preview/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/preview/2017-12-30-preview/consumption.json index 827b5994b691..2b8c45cb593a 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/preview/2017-12-30-preview/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/preview/2017-12-30-preview/consumption.json @@ -545,7 +545,8 @@ "in": "path", "description": "Budget name.", "required": true, - "type": "string" + "type": "string", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/consumption.json new file mode 100644 index 000000000000..077dbd24d7be --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/consumption.json @@ -0,0 +1,2131 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-03-31", + "title": "ConsumptionManagementClient", + "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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.Consumption/usageDetails": { + "get": { + "tags": [ + "UsageDetails" + ], + "operationId": "UsageDetails_List", + "description": "Lists the usage details for a scope by billing period. Usage details are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "UsageDetailsList": { + "$ref": "./examples/UsageDetailsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/additionalProperties or properties/meterDetails within a list of usage details. By default, these fields are not included when listing usage details.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "description": "May be used to filter usageDetails by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. 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" + }, + { + "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 usageDetails.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsageDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/usageDetails": { + "get": { + "tags": [ + "UsageDetails" + ], + "operationId": "UsageDetails_ListByBillingPeriod", + "description": "Lists the usage details for a scope by billing period. Usage details are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "UsageDetailsListForBillingPeriod": { + "$ref": "./examples/UsageDetailsListForBillingPeriod.json" + }, + "UsageDetailsExpand": { + "$ref": "./examples/UsageDetailsExpand.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/additionalProperties or properties/meterDetails within a list of usage details. By default, these fields are not included when listing usage details.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "description": "May be used to filter usageDetails by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. 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" + }, + { + "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 usageDetails.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsageDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/marketplaces": { + "get": { + "tags": [ + "Marketplaces" + ], + "x-ms-odata": "#/definitions/Marketplace", + "operationId": "Marketplaces_List", + "description": "Lists the marketplaces for a scope by subscriptionId. Marketplaces are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "MarketplacesList": { + "$ref": "./examples/MarketplacesList.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter marketplaces by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. 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" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N marketplaces.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "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" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/MarketplacesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/marketplaces": { + "get": { + "tags": [ + "Marketplaces" + ], + "x-ms-odata": "#/definitions/Marketplace", + "operationId": "Marketplaces_ListByBillingPeriod", + "description": "Lists the marketplaces for a scope by billing period and subscripotionId. Marketplaces are available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "MarketplacesListForBillingPeriod": { + "$ref": "./examples/MarketplacesListForBillingPeriod.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter marketplaces by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. 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" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N marketplaces.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "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" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/MarketplacesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservedInstances" + ], + "operationId": "ReservationsSummaries_ListByReservationOrder", + "description": "Lists the reservations summaries for daily or monthly grain.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationSummariesDaily": { + "$ref": "./examples/ReservationSummariesDaily.json" + }, + "ReservationSummariesMonthly": { + "$ref": "./examples/ReservationSummariesMonthly.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "$ref": "#/parameters/grainParameter" + }, + { + "name": "$filter", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationSummariesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationSummaries": { + "get": { + "tags": [ + "ReservedInstances" + ], + "operationId": "ReservationsSummaries_ListByReservationOrderAndReservation", + "description": "Lists the reservations summaries for daily or monthly grain.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationSummariesDailyWithReservationId": { + "$ref": "./examples/ReservationSummariesDailyWithReservationId.json" + }, + "ReservationSummariesMonthlyWithReservationId": { + "$ref": "./examples/ReservationSummariesMonthlyWithReservationId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "$ref": "#/parameters/reservationIdParameter" + }, + { + "$ref": "#/parameters/grainParameter" + }, + { + "name": "$filter", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationSummariesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationDetails": { + "get": { + "tags": [ + "ReservedInstances" + ], + "operationId": "ReservationsDetails_ListByReservationOrder", + "description": "Lists the reservations details for provided date range.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationDetails": { + "$ref": "./examples/ReservationDetails.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "name": "$filter", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationDetails": { + "get": { + "tags": [ + "ReservedInstances" + ], + "operationId": "ReservationsDetails_ListByReservationOrderAndReservation", + "description": "Lists the reservations details for provided date range.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationDetailsWithReservationId": { + "$ref": "./examples/ReservationDetailsWithReservationId.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/reservationOrderIdParameter" + }, + { + "$ref": "#/parameters/reservationIdParameter" + }, + { + "name": "$filter", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "in": "query", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/budgets": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_List", + "description": "Lists all budgets for a subscription.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "BudgetsList": { + "$ref": "./examples/BudgetsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BudgetsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Consumption/budgets": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_ListByResourceGroupName", + "description": "Lists all budgets for a resource group under a subscription.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "BudgetsList": { + "$ref": "./examples/BudgetsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BudgetsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/budgets/{budgetName}": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_Get", + "description": "Gets the budget for a subscription by budget name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Budget": { + "$ref": "./examples/Budget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_CreateOrUpdate", + "description": "The operation to create or update a budget. Update operation requires latest eTag to be set in the request mandatorily. 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/consumption/" + }, + "x-ms-examples": { + "CreateOrUpdateBudget": { + "$ref": "./examples/CreateOrUpdateBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Budget" + }, + "description": "Parameters supplied to the Create Budget operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_Delete", + "description": "The operation to delete a budget.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "DeleteBudget": { + "$ref": "./examples/DeleteBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Consumption/budgets/{budgetName}": { + "get": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_GetByResourceGroupName", + "description": "Gets the budget for a resource group under a subscription by budget name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "Budget": { + "$ref": "./examples/Budget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_CreateOrUpdateByResourceGroupName", + "description": "The operation to create or update a budget. Update operation requires latest eTag to be set in the request mandatorily. 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/consumption/" + }, + "x-ms-examples": { + "CreateOrUpdateBudget": { + "$ref": "./examples/CreateOrUpdateBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Budget" + }, + "description": "Parameters supplied to the Create Budget operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Budget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Budgets" + ], + "operationId": "Budgets_DeleteByResourceGroupName", + "description": "The operation to delete a budget.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "DeleteBudget": { + "$ref": "./examples/DeleteBudget.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/budgetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Consumption/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available consumption 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" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/pricesheets/default": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_Get", + "description": "Gets the price sheet for a scope by subscriptionId. Price sheet is available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "PriceSheet": { + "$ref": "./examples/PriceSheet.json" + } + }, + "parameters": [ + { + "name": "$expand", + "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.", + "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 top N results.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PriceSheetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_GetByBillingPeriod", + "description": "Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "PriceSheetForBillingPeriod": { + "$ref": "./examples/PriceSheetForBillingPeriod.json" + }, + "PriceSheetExpand": { + "$ref": "./examples/PriceSheetExpand.json" + } + }, + "parameters": [ + { + "name": "$expand", + "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.", + "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 top N results.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PriceSheetResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "MeterDetails": { + "description": "The properties of the meter detail.", + "properties": { + "meterName": { + "description": "The name of the meter, within the given meter category", + "type": "string", + "readOnly": true + }, + "meterCategory": { + "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..", + "type": "string", + "readOnly": true + }, + "meterSubCategory": { + "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.", + "type": "string", + "readOnly": true + }, + "meterLocation": { + "description": "The location in which the Azure service is available.", + "type": "string", + "readOnly": true + }, + "totalIncludedQuantity": { + "description": "The total included quantity associated with the offer.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "pretaxStandardRate": { + "description": "The pretax listing price.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "UsageDetail": { + "description": "An usage detail resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UsageDetailProperties", + "title": "Usage detail properties" + } + } + }, + "UsageDetailsListResult": { + "description": "Result of listing usage details. It contains a list of available usage details in reverse chronological order by billing period.", + "properties": { + "value": { + "description": "The list of usage details.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/UsageDetail" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "UsageDetailProperties": { + "description": "The properties of the usage detail.", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the usage belongs to.", + "type": "string", + "readOnly": true + }, + "invoiceId": { + "description": "The id of the invoice resource that the usage belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "The start of the date time range covered by the usage detail.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usageEnd": { + "description": "The end of the date time range covered by the usage detail.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "instanceName": { + "description": "The name of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "instanceId": { + "description": "The uri of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "instanceLocation": { + "description": "The location of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "usageQuantity": { + "description": "The quantity of usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "billableQuantity": { + "description": "The billable usage quantity.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "pretaxCost": { + "description": "The amount of cost before tax.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "isEstimated": { + "description": "The estimated usage is subject to change.", + "type": "boolean", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID).", + "type": "string", + "format":"uuid", + "readOnly": true + }, + "meterDetails": { + "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.", + "$ref": "#/definitions/MeterDetails", + "readOnly": true + }, + "subscriptionGuid": { + "description": "Subscription guid.", + "type": "string", + "format":"uuid", + "readOnly": true + }, + "subscriptionName": { + "description": "Subscription name.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "Account name.", + "type": "string", + "readOnly": true + }, + "departmentName": { + "description": "Department name.", + "type": "string", + "readOnly": true + }, + "product": { + "description": "Product name.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a costcenter exists", + "type": "string", + "readOnly": true + }, + "additionalProperties": { + "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand.", + "type": "string", + "readOnly": true + } + } + }, + "Marketplace": { + "description": "An marketplace resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MarketplaceProperties", + "title": "Marketplace properties" + } + } + }, + "MarketplacesListResult": { + "description": "Result of listing marketplaces. It contains a list of available marketplaces in reverse chronological order by billing period.", + "type": "object", + "properties": { + "value": { + "description": "The list of marketplaces.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Marketplace" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "MarketplaceProperties": { + "description": "The properties of the marketplace usage detail.", + "type": "object", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the usage belongs to.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "The start of the date time range covered by the usage detail.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usageEnd": { + "description": "The end of the date time range covered by the usage detail.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "resourceRate": { + "description": "The marketplace resource rate.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "offerName": { + "description": "The type of offer.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "The name of resource group.", + "type": "string", + "readOnly": true + }, + "orderNumber": { + "description": "The order number.", + "type": "string", + "readOnly": true + }, + "instanceName": { + "description": "The name of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "instanceId": { + "description": "The uri of the resource instance that the usage is about.", + "type": "string", + "readOnly": true + }, + "currency": { + "description": "The ISO currency in which the meter is charged, for example, USD.", + "type": "string", + "readOnly": true + }, + "consumedQuantity": { + "description": "The quantity of usage.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unitOfMeasure": { + "description": "The unit of measure.", + "type": "string", + "readOnly": true + }, + "pretaxCost": { + "description": "The amount of cost before tax.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "isEstimated": { + "description": "The estimated usage is subject to change.", + "type": "boolean", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID).", + "type": "string", + "format":"uuid", + "readOnly": true + }, + "subscriptionGuid": { + "description": "Subscription guid.", + "type": "string", + "format":"uuid", + "readOnly": true + }, + "subscriptionName": { + "description": "Subscription name.", + "type": "string", + "readOnly": true + }, + "accountName": { + "description": "Account name.", + "type": "string", + "readOnly": true + }, + "departmentName": { + "description": "Department name.", + "type": "string", + "readOnly": true + }, + "consumedService": { + "description": "Consumed service name.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center of this department if it is a department and a costcenter exists", + "type": "string", + "readOnly": true + }, + "additionalProperties": { + "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand.", + "type": "string", + "readOnly": true + }, + "publisherName": { + "description": "The name of publisher.", + "type": "string", + "readOnly": true + }, + "planName": { + "description": "The name of plan.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationSummaries": { + "description": "reservation summaries resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationSummariesProperties", + "title": "Reservation Summaries properties" + } + } + }, + "ReservationSummariesListResult": { + "description": "Result of listing reservation summaries.", + "properties": { + "value": { + "description": "The list of reservation summaries.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationSummaries" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationSummariesProperties": { + "description": "The properties of the reservation summaries.", + "properties": { + "reservationOrderId": { + "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.", + "type": "string", + "readOnly": true + }, + "skuName": { + "description": "This is the ARM Sku name. It can be used to join with the servicetype field in additoinalinfo in usage records.", + "type": "string", + "readOnly": true + }, + "reservedHours": { + "description": "This is the total hours reserved. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "usageDate": { + "description": "Data corresponding to the utilization record. If the grain of data is monthly, it will be first day of month.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usedHours": { + "description": "Total used hours by the reservation", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "minUtilizationPercentage": { + "description": "This is the minimum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 10%, this field will return 10% for that day", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "avgUtilizationPercentage": { + "description": "This is average utilization for the entire time range. (day or month depending on the grain)", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "maxUtilizationPercentage": { + "description": "This is the maximum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 100%, this field will return 100% for that day.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "ReservationDetails": { + "description": "reservation details resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationDetailsProperties", + "title": "Reservation Details properties" + } + } + }, + "ReservationDetailsListResult": { + "description": "Result of listing reservation details.", + "properties": { + "value": { + "description": "The list of reservation details.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReservationDetails" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationDetailsProperties": { + "description": "The properties of the reservation details.", + "properties": { + "reservationOrderId": { + "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", + "type": "string", + "readOnly": true + }, + "reservationId": { + "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.", + "type": "string", + "readOnly": true + }, + "skuName": { + "description": "This is the ARM Sku name. It can be used to join with the servicetype field in additoinalinfo in usage records.", + "type": "string", + "readOnly": true + }, + "reservedHours": { + "description": "This is the total hours reserved for the day. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "usageDate": { + "description": "The date on which consumption occurred.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "usedHours": { + "description": "This is the total hours used by the instance.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "instanceId": { + "description": "This identifier is the name of the resource or the fully qualified Resource ID.", + "type": "string", + "readOnly": true + }, + "totalReservedQuantity": { + "description": "This is the total count of instances that are reserved for the reservationid.", + "type": "number", + "format": "decimal", + "readOnly": true + } + } + }, + "BudgetsListResult": { + "description": "Result of listing budgets. It contains a list of available budgets in the scope provided.", + "properties": { + "value": { + "description": "The list of budgets.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Budget" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Budget": { + "description": "A budget resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BudgetProperties", + "title": "Budget properties" + } + } + }, + "BudgetProperties": { + "description": "The properties of the budget.", + "properties": { + "category": { + "description": "The category of the budget, whether the budget tracks cost or usage.", + "type": "string", + "enum": [ + "Cost", + "Usage" + ], + "x-ms-enum": { + "name": "CategoryType", + "modelAsString": true + } + }, + "amount": { + "description": "The total amount of cost to track with the budget", + "type": "number", + "format": "decimal" + }, + "timeGrain": { + "description": "The time covered by a budget. Tracking of the amount will be reset based on the time grain.", + "type": "string", + "enum": [ + "Monthly", + "Quarterly", + "Annually" + ], + "x-ms-enum": { + "name": "TimeGrainType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than three months. Past start date should be selected within the timegrain preiod. There are no restrictions on the end date.", + "$ref": "#/definitions/BudgetTimePeriod" + }, + "filters": { + "description": "May be used to filter budgets by resource group, resource, or meter.", + "type": "object", + "$ref": "#/definitions/Filters" + }, + "currentSpend": { + "description": "The current amount of cost which is being tracked for a budget.", + "$ref": "#/definitions/CurrentSpend", + "readOnly": true + }, + "notifications": { + "type": "object", + "description": "Dictionary of notifications associated with the budget. Budget can have up to five notifications.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/Notification" + }, + "maxItems": 5 + } + }, + "required": [ + "category", + "amount", + "timeGrain", + "timePeriod" + ] + }, + "BudgetTimePeriod": { + "description": "The start and end date for a budget.", + "properties": { + "startDate": { + "description": "The start date for the budget.", + "type": "string", + "format": "date-time" + }, + "endDate": { + "description": "The end date for the budget. If not provided, we default this to 10 years from the start date.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "startDate" + ] + }, + "Filters": { + "description": "May be used to filter budgets by resource group, resource, or meter.", + "properties": { + "resourceGroups": { + "description": "The list of filters on resource groups, allowed at subscription level only.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 10 + }, + "resources": { + "description": "The list of filters on resources.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 10 + }, + "meters": { + "description": "The list of filters on meters (GUID), mandatory for budgets of usage category. ", + "type": "array", + "items": { + "type": "string", + "format":"uuid" + }, + "minItems": 0, + "maxItems": 10 + }, + "tags": { + "type": "object", + "description": "The dictionary of filters on tags.", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "minItems": 0, + "maxItems": 10 + } + } + }, + "CurrentSpend": { + "description": "The current amount of cost which is being tracked for a budget.", + "properties": { + "amount": { + "description": "The total amount of cost which is being tracked by the budget.", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "unit": { + "description": "The unit of measure for the budget amount.", + "type": "string", + "readOnly": true + } + } + }, + "Notification": { + "description": "The notification associated with a budget.", + "properties": { + "enabled": { + "description": "The notification is enabled or not.", + "type": "boolean" + }, + "operator": { + "description": "The comparison operator.", + "type": "string", + "enum": [ + "EqualTo", + "GreaterThan", + "GreaterThanOrEqualTo" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "threshold": { + "description": "Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.", + "type": "number", + "format": "decimal" + }, + "contactEmails": { + "description": "Email addresses to send the budget notification to when the threshold is exceeded.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "maxItems": 50 + }, + "contactRoles": { + "description": "Contact roles to send the budget notification to when the threshold is exceeded.", + "type": "array", + "items": { + "type": "string" + } + }, + "contactGroups": { + "description": "Action groups to send the budget notification to when the threshold is exceeded.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 0, + "maxItems": 50 + } + }, + "required": [ + "enabled", + "operator", + "threshold", + "contactEmails" + ] + }, + "ErrorDetails": { + "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 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": "#/definitions/ErrorDetails" + } + } + }, + "Operation": { + "description": "A Consumption 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: Microsoft.Consumption.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: UsageDetail, etc.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "OperationListResult": { + "description": "Result of listing consumption operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of consumption operations supported by the Microsoft.Consumption 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 + } + } + }, + "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." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "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 scenarion, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + }, + "PriceSheetResult": { + "description": "An pricesheet resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PriceSheetModel", + "title": "Price sheet properties" + } + } + }, + "PriceSheetModel": { + "description": "price sheet result. It contains the pricesheet associated with billing period", + "properties": { + "pricesheets": { + "description": "Price sheet", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PriceSheetProperties" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PriceSheetProperties": { + "description": "The properties of the price sheet.", + "properties": { + "billingPeriodId": { + "description": "The id of the billing period resource that the usage belongs to.", + "type": "string", + "readOnly": true + }, + "meterId": { + "description": "The meter id (GUID)", + "type": "string", + "format":"uuid", + "readOnly": true + }, + "meterDetails": { + "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.", + "$ref": "#/definitions/MeterDetails", + "readOnly": true + }, + "unitOfMeasure": { + "description": "Unit of measure", + "type": "string", + "readOnly": true + }, + "includedQuantity": { + "description": "Included quality for an offer", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "partNumber": { + "description": "Part Number", + "type": "string", + "readOnly": true + }, + "unitPrice": { + "description": "Unit Price", + "type": "number", + "format": "decimal", + "readOnly": true + }, + "currencyCode": { + "description": "Currency Code", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "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 2018-03-31." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Azure Resource Group Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "budgetNameParameter": { + "name": "budgetName", + "in": "path", + "description": "Budget Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingPeriodNameParameter": { + "name": "billingPeriodName", + "in": "path", + "description": "Billing Period Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "reservationOrderIdParameter": { + "name": "reservationOrderId", + "in": "path", + "description": "Order Id of the reservation", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "reservationIdParameter": { + "name": "reservationId", + "in": "path", + "description": "Id of the reservation", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "grainParameter": { + "name": "grain", + "description": "Can be daily or monthly", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "daily", + "monthly" + ], + "x-ms-enum": { + "name": "datagrain", + "modelAsString": true, + "values": [ + { + "value": "daily", + "description": "Daily grain of data", + "name": "DailyGrain" + }, + { + "value": "monthly", + "description": "Monthly grain of data", + "name": "MonthlyGrain" + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/Budget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/Budget.json new file mode 100644 index 000000000000..a1d05d081d63 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/Budget.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MPDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/BudgetsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/BudgetsList.json new file mode 100644 index 000000000000..8ac06213049f --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/BudgetsList.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MYDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ] + }, + "Actual_GreaterThanOrEqualTo_90_Percent": { + "enabled": true, + "operator": "GreaterThanOrEqualTo", + "threshold": 90, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + }, + { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 600.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MYDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 120.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_40_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 40, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ] + }, + "Actual_GreaterThanOrEqualTo_60_Percent": { + "enabled": true, + "operator": "GreaterThanOrEqualTo", + "threshold": 60, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/CreateOrUpdateBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/CreateOrUpdateBudget.json new file mode 100644 index 000000000000..947aaadf56e7 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/CreateOrUpdateBudget.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget", + "parameters": { + "eTag": "\"1d34d016a593709\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MYDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MPDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + }, + "200": { + "body": { + "id": "subscriptions/{subscription-id}/providers/Microsoft.Consumption/budgets/TestBudget", + "name": "TestBudget", + "type": "Microsoft.Consumption/budgets", + "eTag": "\"1d34d012214157f\"", + "properties": { + "category": "Cost", + "amount": 100.65, + "timeGrain": "Monthly", + "timePeriod": { + "startDate": "2017-10-01T00:00:00Z", + "endDate": "2018-10-31T00:00:00Z" + }, + "filters": { + "resourceGroups": [ + "MPDEVTESTRG" + ], + "resources": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MYVM2", + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1" + ], + "meters": [ + "00000000-0000-0000-0000-000000000000" + ], + "tags": { + "category": [ + "Dev", + "Prod" + ], + "department": [ + "engineering", + "sales" + ] + } + }, + "currentSpend": { + "amount": 80.89, + "unit": "USD" + }, + "notifications": { + "Actual_GreaterThan_80_Percent": { + "enabled": true, + "operator": "GreaterThan", + "threshold": 80, + "contactEmails": [ + "johndoe@contoso.com", + "janesmith@contoso.com" + ], + "contactRoles": [ + "Contributor", + "Reader" + ], + "contactGroups": [ + "/subscriptions/{subscription-id}/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup" + ] + } + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/DeleteBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/DeleteBudget.json new file mode 100644 index 000000000000..d77e16b29e22 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/DeleteBudget.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "MYDEVTESTRG", + "budgetName": "TestBudget" + }, + "responses": { + "200": { + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/MarketplacesList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/MarketplacesList.json new file mode 100644 index 000000000000..8c10effe6f71 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/MarketplacesList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Consumption/marketPlaces/marketplaceId1", + "name": "marketplaceId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingPeriodId": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan1", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/MarketplacesListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/MarketplacesListForBillingPeriod.json new file mode 100644 index 000000000000..3550e9657336 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/MarketplacesListForBillingPeriod.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201801" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketPlaces/marketplacesId1", + "name": "marketplacesId1", + "type": "Microsoft.Consumption/marketPlaces", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingPeriodId": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "currency": "USD", + "consumedQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "offerName": "offer1", + "resourceGroup": "TEST", + "orderNumber": "00000000-0000-0000-0000-000000000000", + "publisherName": "xyz", + "planName": "plan2", + "resourceRate": 0.24, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "azure subscription" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheet.json new file mode 100644 index 000000000000..cee0e7c90bf0 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheet.json @@ -0,0 +1,33 @@ +{ + "parameters": + { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": + { + "200": + { + "body": + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/pricesheets/default", + "name": "default", + "type": "Microsoft.Consumption/pricesheets", + "properties": + { + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D", + "pricesheets": [ + { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "meterId": "00000000-0000-0000-0000-000000000000", + "unitOfMeasure": "100 Hours", + "includedQuantity": 100, + "partNumber": "XX-11110", + "unitPrice": 0.00328, + "currencyCode": "EUR" + }] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheetExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheetExpand.json new file mode 100644 index 000000000000..31e47d096115 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheetExpand.json @@ -0,0 +1,44 @@ +{ + "parameters": + { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201801", + "$expand": "meterDetails" + }, + "responses": + { + "200": + { + "body": + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default", + "name": "default", + "type": "Microsoft.Consumption/pricesheets", + "properties": + { + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D&$expand=properties/pricesheets/meterDetails", + "pricesheets": [ + { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "meterId": "00000000-0000-0000-0000-000000000000", + "unitOfMeasure": "100 Hours", + "includedQuantity": 100, + "partNumber": "XX-11110", + "unitPrice": 0.00328, + "currencyCode": "EUR", + "meterDetails": + { + "meterName": "Data Transfer Out (GB)", + "meterCategory": "Networking", + "unit": "GB", + "meterLocation": "Zone 2", + "totalIncludedQuantity": 0, + "pretaxStandardRate": 0.138 + } + }] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheetForBillingPeriod.json new file mode 100644 index 000000000000..dbb0a1b7b5ea --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/PriceSheetForBillingPeriod.json @@ -0,0 +1,34 @@ +{ + "parameters": + { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201801" + }, + "responses": + { + "200": + { + "body": + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default", + "name": "default", + "type": "Microsoft.Consumption/pricesheets", + "properties": + { + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31", + "pricesheets": [ + { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "meterId": "00000000-0000-0000-0000-000000000000", + "unitOfMeasure": "100 Hours", + "includedQuantity": 100, + "partNumber": "XX-11110", + "unitPrice": 0.00328, + "currencyCode": "EUR" + }] + } + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationDetails.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationDetails.json new file mode 100644 index 000000000000..c5a3460cd183 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationDetails.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationDetails/20171129", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171129", + "type": "Microsoft.Consumption/reservationDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2017-11-29T00:00:00Z", + "skuName": "Standard_D2_v2", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/wvn-sql/providers/microsoft.compute/virtualmachines/abc-sql2014sp33", + "totalReservedQuantity": 1.000000000000000, + "reservedHours": 24.000000000000000, + "usedHours": 24.000000000000000 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationDetailsWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationDetailsWithReservationId.json new file mode 100644 index 000000000000..67ce88344331 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationDetailsWithReservationId.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "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'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationDetails/20171129", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171129", + "type": "Microsoft.Consumption/reservationDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "usageDate": "2017-11-29T00:00:00Z", + "skuName": "Standard_D2_v2", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/wvn-sql/providers/microsoft.compute/virtualmachines/wvn-sql2014sp33", + "totalReservedQuantity": 1.000000000000000, + "reservedHours": 24.000000000000000, + "usedHours": 24.000000000000000 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesDaily.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesDaily.json new file mode 100644 index 000000000000..108f4de1d686 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesDaily.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "grain":"daily", + "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationsummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesDailyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesDailyWithReservationId.json new file mode 100644 index 000000000000..29d5d9195bbf --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesDailyWithReservationId.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "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'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationsummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0 + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesMonthly.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesMonthly.json new file mode 100644 index 000000000000..9a6e028b6b6b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesMonthly.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "grain":"monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationsummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesMonthlyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesMonthlyWithReservationId.json new file mode 100644 index 000000000000..63446aec57d4 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/ReservationSummariesMonthlyWithReservationId.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "grain":"monthly" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001", + "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001", + "type": "Microsoft.Consumption/reservationsummaries", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "reservationOrderId": "00000000-0000-0000-0000-000000000000", + "reservationId": "00000000-0000-0000-0000-000000000000", + "skuName": "Standard_D8s_v3", + "reservedHours": 0.0, + "usageDate": "2017-10-01T00:00:00Z", + "usedHours": 0.0, + "minUtilizationPercentage": 0.0, + "avgUtilizationPercentage": 0.0, + "maxUtilizationPercentage": 0.0 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsExpand.json new file mode 100644 index 000000000000..00651e1d75bb --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsExpand.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201702", + "$expand": "meterDetails,additionalProperties", + "$filter": "properties/usageEnd ge '2018-01-14' AND properties/usageEnd le '2018-02-14'", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/usageDetails/usageDetailsId1", + "name": "usageDetailsId1", + "type": "Microsoft.Consumption/usageDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "invoiceId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/invoices/201703-123456789", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "instanceLocation": "eastasia", + "currency": "USD", + "usageQuantity": 0.00328, + "billableQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000", + "meterDetails": { + "meterName": "Data Transfer Out (GB)", + "meterCategory": "Networking", + "unit": "GB", + "meterLocation": "Zone 2", + "totalIncludedQuantity": 0, + "pretaxStandardRate": 0.138 + }, + "subscriptionGuid": "00000000-0000-0000-0000-000000000000", + "subscriptionName": "Dummy subscription", + "accountName": "My account name", + "departmentName": "My department name", + "product": "My product name", + "consumedService": "My consumed service", + "costCenter": "Cost center 1", + "additionalProperties": "{\"MyType\":\"\",\"ServiceType\":\"\",\"VMName\":\"\",\"UsageType\":\"MyUsage\"}" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsList.json new file mode 100644 index 000000000000..3be20fd1e299 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/usageDetails/usageDetailsId1", + "name": "usageDetailsId1", + "type": "Microsoft.Consumption/usageDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "invoiceId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/invoices/201703-123456789", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "instanceLocation": "eastasia", + "currency": "USD", + "usageQuantity": 0.00328, + "billableQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsListForBillingPeriod.json new file mode 100644 index 000000000000..05e7bde1f6fd --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2018-03-31/examples/UsageDetailsListForBillingPeriod.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-03-31", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "billingPeriodName": "201702" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/usageDetails/usageDetailsId1", + "name": "usageDetailsId1", + "type": "Microsoft.Consumption/usageDetails", + "tags": { + "env": "newcrp", + "dev": "tools" + }, + "properties": { + "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702", + "invoiceId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/invoices/201703-123456789", + "usageStart": "2017-02-13T00:00:00Z", + "usageEnd": "2017-02-13T23:59:59Z", + "instanceName": "shared1", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1", + "instanceLocation": "eastasia", + "currency": "USD", + "usageQuantity": 0.00328, + "billableQuantity": 0.00328, + "pretaxCost": 0.67, + "isEstimated": false, + "meterId": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 65b3c969eb8b..2b57481024d5 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -26,8 +26,7 @@ These are the global settings for the Consumption API. ``` yaml openapi-type: arm -tag: package-2018-01 -azure-validator: true +tag: package-2018-03 ``` ### Tag: package-2017-11 @@ -49,6 +48,16 @@ input-file: - Microsoft.Consumption/stable/2018-01-31/consumption.json ``` +--- +### Tag: package-2018-03 + +These settings apply only when `--tag=package-2018-03` is specified on the command line. + +``` yaml $(tag) == 'package-2018-03' +input-file: +- Microsoft.Consumption/stable/2018-03-31/consumption.json +``` + ## Suppression ``` yaml directive: @@ -154,6 +163,7 @@ batch: - tag: package-2017-11-30 - tag: package-2017-12-30-preview - tag: package-2018-01-31 + - tag: package-2018-03-31 ``` @@ -190,6 +200,14 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-03' && $(go) +output-folder: $(go-sdk-folder)/services/consumption/mgmt/2018-03-31/consumption +``` + ## Java These settings apply only when `--java` is specified on the command line. diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/containerInstance.json index 1255caeaab4c..dc863a3290b9 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/containerInstance.json @@ -179,7 +179,8 @@ "$ref": "#/definitions/ContainerGroup" } } - } + }, + "x-ms-long-running-operation": true }, "patch": { "operationId": "ContainerGroups_Update", @@ -206,6 +207,7 @@ { "name": "Resource", "description": "The container group resource with just the tags to be updated.", + "required": true, "in": "body", "schema": { "$ref": "#/definitions/Resource" @@ -360,6 +362,56 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/exec": { + "post": { + "operationId": "StartContainer_LaunchExec", + "x-ms-examples": { + "ContainerExecStart": { + "$ref": "./examples/ContainerExecStart.json" + } + }, + "summary": "Starts the exec command for a specific container instance.", + "description": "Starts the exec command for a specified container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name":"containerExecRequest", + "in":"body", + "description":"The request for the exec command.", + "required":true, + "schema":{ + "$ref":"#/definitions/ContainerExecRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerExecResponse" + } + } + } + } } }, "definitions": { @@ -1057,6 +1109,44 @@ } } }, + "ContainerExecRequest": { + "description": "The start container exec request.", + "type": "object", + "properties": { + "command": { + "type": "string", + "description": "The command to be executed." + }, + "terminalSize": { + "type": "object", + "description": "The size of the terminal.", + "properties": { + "rows":{ + "type": "integer", + "description": "The row size of the terminal" + }, + "cols": { + "type": "integer", + "description": "The column size of the terminal" + } + } + } + } + }, + "ContainerExecResponse": { + "description": "The information for the container exec command.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the exec websocket." + }, + "password": { + "type": "string", + "description": "The password to start the exec command." + } + } + }, "Resource": { "type": "object", "description": "The Resource model definition.", @@ -1131,6 +1221,14 @@ "type": "string", "description": "The name of the container group.", "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id.", + "x-ms-parameter-location": "method" } } } diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/examples/ContainerExecStart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/examples/ContainerExecStart.json new file mode 100644 index 000000000000..f1136352bed8 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/examples/ContainerExecStart.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-02-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1", + "containerExecRequest": { + "command": "/bin/bash", + "terminalSize": { + "row": 12, + "column": 12 + } + } + }, + "responses": { + "200": { + "body": { + "webSocketUri": "wss://web-socket-uri", + "password": "password" + } + } + } + } \ No newline at end of file diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/examples/ContainerGroupAsyncOperation.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/examples/ContainerGroupAsyncOperation.json new file mode 100644 index 000000000000..29475e5348c5 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2018-02-01-preview/examples/ContainerGroupAsyncOperation.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westcentralus", + "operationId": "operationId", + "api-version": "2018-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "status": "Creating" + } + } + } + } + \ No newline at end of file diff --git a/specification/containerinstance/resource-manager/readme.md b/specification/containerinstance/resource-manager/readme.md index 9709cab633a3..06ac2b7cf2fe 100644 --- a/specification/containerinstance/resource-manager/readme.md +++ b/specification/containerinstance/resource-manager/readme.md @@ -115,7 +115,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.containerinstance package-name: azure-mgmt-containerinstance - package-version: 0.2.0 + package-version: 0.4.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' diff --git a/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-07-01/containerService.json b/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-07-01/containerService.json index a7d215f2bc13..3921648127e0 100644 --- a/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-07-01/containerService.json +++ b/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-07-01/containerService.json @@ -338,6 +338,12 @@ "Standard_A8_v2", "Standard_A8m_v2", "Standard_A9", + "Standard_B1ms", + "Standard_B1s", + "Standard_B2ms", + "Standard_B2s", + "Standard_B4ms", + "Standard_B8ms", "Standard_D1", "Standard_D11", "Standard_D11_v2", @@ -361,6 +367,8 @@ "Standard_D2_v3", "Standard_D2s_v3", "Standard_D3", + "Standard_D32_v3", + "Standard_D32s_v3", "Standard_D3_v2", "Standard_D3_v2_Promo", "Standard_D4", @@ -370,6 +378,8 @@ "Standard_D4s_v3", "Standard_D5_v2", "Standard_D5_v2_Promo", + "Standard_D64_v3", + "Standard_D64s_v3", "Standard_D8_v3", "Standard_D8s_v3", "Standard_DS1", @@ -380,9 +390,13 @@ "Standard_DS12_v2", "Standard_DS12_v2_Promo", "Standard_DS13", + "Standard_DS13-2_v2", + "Standard_DS13-4_v2", "Standard_DS13_v2", "Standard_DS13_v2_Promo", "Standard_DS14", + "Standard_DS14-4_v2", + "Standard_DS14-8_v2", "Standard_DS14_v2", "Standard_DS14_v2_Promo", "Standard_DS15_v2", @@ -402,10 +416,14 @@ "Standard_E16s_v3", "Standard_E2_v3", "Standard_E2s_v3", + "Standard_E32-16s_v3", + "Standard_E32-8s_v3", "Standard_E32_v3", "Standard_E32s_v3", "Standard_E4_v3", "Standard_E4s_v3", + "Standard_E64-16s_v3", + "Standard_E64-32s_v3", "Standard_E64_v3", "Standard_E64s_v3", "Standard_E8_v3", @@ -413,13 +431,20 @@ "Standard_F1", "Standard_F16", "Standard_F16s", + "Standard_F16s_v2", "Standard_F1s", "Standard_F2", "Standard_F2s", + "Standard_F2s_v2", + "Standard_F32s_v2", "Standard_F4", "Standard_F4s", + "Standard_F4s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", "Standard_F8", "Standard_F8s", + "Standard_F8s_v2", "Standard_G1", "Standard_G2", "Standard_G3", @@ -429,7 +454,11 @@ "Standard_GS2", "Standard_GS3", "Standard_GS4", + "Standard_GS4-4", + "Standard_GS4-8", "Standard_GS5", + "Standard_GS5-16", + "Standard_GS5-8", "Standard_H16", "Standard_H16m", "Standard_H16mr", @@ -440,12 +469,30 @@ "Standard_L32s", "Standard_L4s", "Standard_L8s", + "Standard_M128-32ms", + "Standard_M128-64ms", + "Standard_M128ms", "Standard_M128s", + "Standard_M64-16ms", + "Standard_M64-32ms", "Standard_M64ms", + "Standard_M64s", "Standard_NC12", + "Standard_NC12s_v2", + "Standard_NC12s_v3", "Standard_NC24", "Standard_NC24r", + "Standard_NC24rs_v2", + "Standard_NC24rs_v3", + "Standard_NC24s_v2", + "Standard_NC24s_v3", "Standard_NC6", + "Standard_NC6s_v2", + "Standard_NC6s_v3", + "Standard_ND12s", + "Standard_ND24rs", + "Standard_ND24s", + "Standard_ND6s", "Standard_NV12", "Standard_NV24", "Standard_NV6" diff --git a/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-08-31/managedClusters.json b/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-08-31/managedClusters.json index f5cebe669d2c..708158d96970 100644 --- a/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-08-31/managedClusters.json +++ b/specification/containerservices/resource-manager/Microsoft.ContainerService/stable/2017-08-31/managedClusters.json @@ -445,6 +445,12 @@ "Standard_A8_v2", "Standard_A8m_v2", "Standard_A9", + "Standard_B1ms", + "Standard_B1s", + "Standard_B2ms", + "Standard_B2s", + "Standard_B4ms", + "Standard_B8ms", "Standard_D1", "Standard_D11", "Standard_D11_v2", @@ -468,6 +474,8 @@ "Standard_D2_v3", "Standard_D2s_v3", "Standard_D3", + "Standard_D32_v3", + "Standard_D32s_v3", "Standard_D3_v2", "Standard_D3_v2_Promo", "Standard_D4", @@ -477,6 +485,8 @@ "Standard_D4s_v3", "Standard_D5_v2", "Standard_D5_v2_Promo", + "Standard_D64_v3", + "Standard_D64s_v3", "Standard_D8_v3", "Standard_D8s_v3", "Standard_DS1", @@ -487,9 +497,13 @@ "Standard_DS12_v2", "Standard_DS12_v2_Promo", "Standard_DS13", + "Standard_DS13-2_v2", + "Standard_DS13-4_v2", "Standard_DS13_v2", "Standard_DS13_v2_Promo", "Standard_DS14", + "Standard_DS14-4_v2", + "Standard_DS14-8_v2", "Standard_DS14_v2", "Standard_DS14_v2_Promo", "Standard_DS15_v2", @@ -509,10 +523,14 @@ "Standard_E16s_v3", "Standard_E2_v3", "Standard_E2s_v3", + "Standard_E32-16s_v3", + "Standard_E32-8s_v3", "Standard_E32_v3", "Standard_E32s_v3", "Standard_E4_v3", "Standard_E4s_v3", + "Standard_E64-16s_v3", + "Standard_E64-32s_v3", "Standard_E64_v3", "Standard_E64s_v3", "Standard_E8_v3", @@ -520,13 +538,20 @@ "Standard_F1", "Standard_F16", "Standard_F16s", + "Standard_F16s_v2", "Standard_F1s", "Standard_F2", "Standard_F2s", + "Standard_F2s_v2", + "Standard_F32s_v2", "Standard_F4", "Standard_F4s", + "Standard_F4s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", "Standard_F8", "Standard_F8s", + "Standard_F8s_v2", "Standard_G1", "Standard_G2", "Standard_G3", @@ -536,7 +561,11 @@ "Standard_GS2", "Standard_GS3", "Standard_GS4", + "Standard_GS4-4", + "Standard_GS4-8", "Standard_GS5", + "Standard_GS5-16", + "Standard_GS5-8", "Standard_H16", "Standard_H16m", "Standard_H16mr", @@ -547,12 +576,30 @@ "Standard_L32s", "Standard_L4s", "Standard_L8s", + "Standard_M128-32ms", + "Standard_M128-64ms", + "Standard_M128ms", "Standard_M128s", + "Standard_M64-16ms", + "Standard_M64-32ms", "Standard_M64ms", + "Standard_M64s", "Standard_NC12", + "Standard_NC12s_v2", + "Standard_NC12s_v3", "Standard_NC24", "Standard_NC24r", + "Standard_NC24rs_v2", + "Standard_NC24rs_v3", + "Standard_NC24s_v2", + "Standard_NC24s_v3", "Standard_NC6", + "Standard_NC6s_v2", + "Standard_NC6s_v3", + "Standard_ND12s", + "Standard_ND24rs", + "Standard_ND24s", + "Standard_ND6s", "Standard_NV12", "Standard_NV24", "Standard_NV6" @@ -916,6 +963,7 @@ "properties": { "kubeConfig": { "type": "string", + "format": "byte", "description": "Base64-encoded Kubernetes configuration file." } }, diff --git a/specification/cosmos-db/resource-manager/readme.md b/specification/cosmos-db/resource-manager/readme.md index ceb51b3e01e3..57c97188285e 100644 --- a/specification/cosmos-db/resource-manager/readme.md +++ b/specification/cosmos-db/resource-manager/readme.md @@ -27,7 +27,6 @@ These are the global settings for the Cosmos-DB API. ``` yaml openapi-type: arm tag: package-2015-04 -azure-validator: true ``` 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 new file mode 100644 index 000000000000..33fa9d5d80f2 --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json @@ -0,0 +1,611 @@ +{ + "swagger": "2.0", + "info": { + "title": "DatabricksClient", + "version": "2018-04-01", + "description": "ARM Databricks" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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.Databricks/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "operationId": "Workspaces_Get", + "description": "Gets the workspace.", + "x-ms-examples": { + "Get a workspace": { + "$ref": "./examples/WorkspaceGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "operationId": "Workspaces_Delete", + "description": "Deletes the workspace.", + "x-ms-examples": { + "Delete a workspace": { + "$ref": "./examples/WorkspaceDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Workspaces" + ], + "operationId": "Workspaces_CreateOrUpdate", + "description": "Creates a new workspace.", + "x-ms-examples": { + "Create or update workspace": { + "$ref": "./examples/WorkspaceCreate.json" + } + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "Parameters supplied to the create or update a workspace." + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Created - Returns information about the workspace, including provisioning status.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Created - Returns information about the workspace, including provisioning status.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Workspaces" + ], + "operationId": "Workspaces_Update", + "description": "Updates a workspace.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdate" + }, + "description": "The update to the workspace." + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a workspace's tags.": { + "$ref": "./examples/WorkspaceUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Databricks/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "operationId": "Workspaces_ListByResourceGroup", + "description": "Gets all the workspaces within a resource group.", + "x-ms-examples": { + "Lists workspaces": { + "$ref": "./examples/WorkspacesListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of workspaces.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Databricks/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "operationId": "Workspaces_ListBySubscription", + "description": "Gets all the workspaces within a subscription.", + "x-ms-examples": { + "Lists workspaces": { + "$ref": "./examples/WorkspacesListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of workspaces.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Workspace": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties", + "description": "The workspace properties." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the resource." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "Information about workspace." + }, + "WorkspaceProperties": { + "properties": { + "managedResourceGroupId": { + "type": "string", + "description": "The managed resource group Id." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the workspace parameters." + }, + "provisioningState": { + "readOnly": true, + "$ref": "#/definitions/ProvisioningState", + "description": "The workspace provisioning state." + }, + "uiDefinitionUri": { + "type": "string", + "description": "The blob URI where the UI definition file is located." + }, + "authorizations": { + "description": "The workspace provider authorizations.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceProviderAuthorization" + } + } + }, + "required": [ + "managedResourceGroupId" + ], + "description": "The workspace properties." + }, + "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 geo-location where the resource lives" + } + }, + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{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.Compute/virtualMachines or Microsoft.Storage/storageAccounts." + } + }, + "x-ms-azure-resource": true + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The SKU name." + }, + "tier": { + "type": "string", + "description": "The SKU tier." + } + }, + "required": [ + "name" + ], + "description": "SKU for the resource." + }, + "ProvisioningState": { + "description": "Provisioning status of the workspace.", + "readOnly": true, + "enum": [ + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "WorkspaceProviderAuthorization": { + "properties": { + "principalId": { + "type": "string", + "format": "uuid", + "description": "The provider's principal identifier. This is the identity that the provider will use to call ARM to manage the workspace resources." + }, + "roleDefinitionId": { + "type": "string", + "format": "uuid", + "description": "The provider's role definition identifier. This role will define all the permissions that the provider must have on the workspace's container resource group. This role definition cannot have permission to delete the resource group." + } + }, + "required": [ + "principalId", + "roleDefinitionId" + ], + "description": "The workspace provider authorization." + }, + "WorkspaceUpdate": { + "description": "An update to a workspace.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ErrorDetail": { + "title": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error's code.", + "type": "string" + }, + "message": { + "description": "A human readable error message.", + "type": "string" + }, + "target": { + "description": "Indicates which property in the request is responsible for the error.", + "type": "string" + } + }, + "required": [ + "code", + "message" + ] + }, + "ErrorInfo": { + "title": "The code and message for an error.", + "type": "object", + "properties": { + "code": { + "description": "A machine readable error code.", + "type": "string" + }, + "message": { + "description": "A human readable error message.", + "type": "string" + }, + "details": { + "description": "error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + }, + "innererror": { + "description": "Inner error details if they exist.", + "type": "string" + } + }, + "required": [ + "code", + "message" + ] + }, + "ErrorResponse": { + "title": "Error response.", + "description": "Contains details when the response code indicates an error.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "#/definitions/ErrorInfo" + } + }, + "required": [ + "error" + ] + }, + "WorkspaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + }, + "description": "The array of workspaces." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of workspaces." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "WorkspaceName": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace.", + "minLength": 3, + "maxLength": 64, + "x-ms-parameter-location": "method" + } + } +} 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 new file mode 100644 index 000000000000..d88163568da8 --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "workspaceName": "myWorkspace", + "api-version": "2018-04-01", + "parameters": { + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG" + }, + "name": "myWorkspace", + "location": "westus" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "myWorkspace", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "tags": null, + "sku": { + "name": "skuName" + }, + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + } + }, + "201": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..ee300cd33ceb --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "resourceGroupName": "rg", + "api-version": "2018-04-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..daac2b709e7d --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "workspaceName": "myWorkspace", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "myWorkspace", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + } + }, + "404": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..880f9d5b5fa9 --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "workspaceName": "myWorkspace", + "api-version": "2018-04-01", + "parameters":{ + "tags": { + "mytag1": "myvalue1" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "myWorkspace", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "tags": { + "mytag1": "myvalue1" + }, + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + } + }, + "202": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..60f742a8a66b --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "myWorkspace1", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace1", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "tags": null, + "sku": { + "name": "skuName" + }, + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + }, + { + "name": "myWorkspace2", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace2", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "tags": null, + "sku": { + "name": "skuName" + }, + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + } + ] + } + } + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..b226d8f96010 --- /dev/null +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-04-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "myWorkspace1", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace1", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "tags": null, + "sku": { + "name": "skuName" + }, + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + }, + { + "name": "myWorkspace2", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace2", + "type": "Microsoft.Databricks/workspaces", + "location": "East US 2", + "tags": null, + "sku": { + "name": "skuName" + }, + "properties": { + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": null, + "provisioningState": "Created", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/databricks/resource-manager/readme.md b/specification/databricks/resource-manager/readme.md new file mode 100644 index 000000000000..f60e2c4b73e9 --- /dev/null +++ b/specification/databricks/resource-manager/readme.md @@ -0,0 +1,49 @@ +# Databricks + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Databricks. + + + +--- +## Getting Started +To build the SDK for Databricks, 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 Databricks API. + +``` yaml +openapi-type: arm +tag: package-2018-03-01-preview +``` + + +### Tag: package-2018-04-01 + +These settings apply only when `--tag=package-2018-04-01` is specified on the command line. + +``` yaml $(tag) == 'package-2018-04-01' +input-file: +- Microsoft.Databricks/stable/2018-04-01/databricks.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. diff --git a/specification/datacatalog/resource-manager/Microsoft.DataCatalog/stable/2016-03-30/datacatalog.json b/specification/datacatalog/resource-manager/Microsoft.DataCatalog/stable/2016-03-30/datacatalog.json index 58c5261cef6e..f863b8e21593 100644 --- a/specification/datacatalog/resource-manager/Microsoft.DataCatalog/stable/2016-03-30/datacatalog.json +++ b/specification/datacatalog/resource-manager/Microsoft.DataCatalog/stable/2016-03-30/datacatalog.json @@ -428,7 +428,8 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the data catlog in the specified subscription and resource group." + "description": "The name of the data catlog in the specified subscription and resource group.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json index ddf21ef9a1d5..f802723c98fb 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json @@ -1415,6 +1415,18 @@ ], "properties": { } + }, + "SalesforceMarketingCloudObjectDataset": { + "x-ms-discriminator-value": "SalesforceMarketingCloudObject", + "description": "Salesforce Marketing Cloud dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + } } } } diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json index 777fd49f4776..88e2a2bae13f 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json @@ -385,6 +385,10 @@ "type": "object", "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": "object", + "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": "object", "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)." @@ -1309,6 +1313,14 @@ "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)." @@ -3714,6 +3726,58 @@ } } }, + "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.", @@ -3847,6 +3911,18 @@ "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." } }, "required": [ @@ -3919,6 +3995,71 @@ "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 cluster that will be used for all runs of this job. Type: string (or Expression with resultType string)." + }, + "newClusterVersion": { + "type": "object", + "description": "The Spark version of new cluster. Type: string (or Expression with resultType string)." + }, + "newClusterNumOfWorker": { + "type": "object", + "description": "Number of worker nodes that new cluster should have. A string formatted Int32, like '1' means numOfWorker is 1 or '1:10' means auto-scale from 1 as min and 10 as max. Type: string (or Expression with resultType string)." + }, + "newClusterNodeType": { + "type": "object", + "description": "The node types of new cluster. 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)." + } + }, + "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" + ] } } } \ No newline at end of file diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json index fcc9958ab94f..89a0f710b4cb 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json @@ -1061,6 +1061,21 @@ "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/CopySource" + } + ], + "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.", @@ -2728,6 +2743,45 @@ "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)." + } + } + }, + "required": [ + "notebookPath" + ] } } } diff --git a/specification/datafactory/resource-manager/readme.md b/specification/datafactory/resource-manager/readme.md index 4269a4892855..0a265a4b1891 100644 --- a/specification/datafactory/resource-manager/readme.md +++ b/specification/datafactory/resource-manager/readme.md @@ -84,6 +84,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.datafactory package-name: azure-mgmt-dafactory + package-version: 0.6.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' diff --git a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-10-01-preview/catalog.json b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-10-01-preview/catalog.json index 895d19dfb805..e8943294dd85 100644 --- a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-10-01-preview/catalog.json +++ b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-10-01-preview/catalog.json @@ -2897,7 +2897,8 @@ "type": "string", "default": "azuredatalakeanalytics.net", "x-ms-skip-url-encoding": true, - "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Catalog service requests." + "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Catalog service requests.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-11-01-preview/job.json b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-11-01-preview/job.json index 3c8f237ffbd5..4c8c833c6622 100644 --- a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-11-01-preview/job.json +++ b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2015-11-01-preview/job.json @@ -1009,7 +1009,8 @@ "type": "string", "default": "azuredatalakeanalytics.net", "x-ms-skip-url-encoding": true, - "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Job service requests." + "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Job service requests.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2016-03-20-preview/job.json b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2016-03-20-preview/job.json index 095c80bb9420..a28f45d787d0 100644 --- a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2016-03-20-preview/job.json +++ b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2016-03-20-preview/job.json @@ -1065,7 +1065,8 @@ "type": "string", "default": "azuredatalakeanalytics.net", "x-ms-skip-url-encoding": true, - "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Job service requests." + "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Job service requests.", + "x-ms-parameter-location": "client" } } } diff --git a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2017-09-01-preview/job.json b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2017-09-01-preview/job.json index 7a7709c1e595..3c35d8113534 100644 --- a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2017-09-01-preview/job.json +++ b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/preview/2017-09-01-preview/job.json @@ -2011,7 +2011,8 @@ "type": "string", "default": "azuredatalakeanalytics.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix used as the base for all Azure Data Lake Analytics Job service requests." + "description": "The DNS suffix used as the base for all Azure Data Lake Analytics Job service requests.", + "x-ms-parameter-location": "client" } } } diff --git a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/stable/2016-11-01/catalog.json b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/stable/2016-11-01/catalog.json index c12a5990441a..dce1c84c82f9 100644 --- a/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/stable/2016-11-01/catalog.json +++ b/specification/datalake-analytics/data-plane/Microsoft.DataLakeAnalytics/stable/2016-11-01/catalog.json @@ -4271,7 +4271,8 @@ "type": "string", "default": "azuredatalakeanalytics.net", "x-ms-skip-url-encoding": true, - "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Catalog service requests." + "description": "Gets the DNS suffix used as the base for all Azure Data Lake Analytics Catalog service requests.", + "x-ms-parameter-location": "client" } } } diff --git a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json index 6b79b15e2e12..80b5afd54ea0 100644 --- a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json +++ b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json @@ -1656,7 +1656,8 @@ "type": "string", "default": "azuredatalakestore.net", "x-ms-skip-url-encoding": true, - "description": "Gets the URI used as the base for all cloud service requests." + "description": "Gets the URI used as the base for all cloud service requests.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json index 703596738b02..b636e04e8ac5 100644 --- a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json +++ b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json @@ -1815,7 +1815,8 @@ "type": "string", "default": "azuredatalakestore.net", "x-ms-skip-url-encoding": true, - "description": "Gets the URI used as the base for all cloud service requests." + "description": "Gets the URI used as the base for all cloud service requests.", + "x-ms-parameter-location": "client" } } } diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/datamigration.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/datamigration.json new file mode 100644 index 000000000000..6734fd03c8cb --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/datamigration.json @@ -0,0 +1,1239 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview", + "description": "The Data Migration Service helps people migrate their data from on-premise database servers to Azure, or from older database software to newer software. The service manages one or more workers that are joined to a customer's virtual network, which is assumed to provide connectivity to their databases. To avoid frequent updates to the resource provider, data migration tasks are implemented by the resource provider in a generic way as task resources, each of which has a task type (which identifies the type of work to run), input, and output. The client is responsible for providing appropriate task type and inputs, which will be passed through unexamined to the machines that implement the functionality, and for understanding the output, which is passed back unexamined to the client.", + "x-ms-code-generation-settings": { + "name": "DataMigrationServiceClient", + "useDateTimeOffset": true + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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.DataMigration/skus": { + "get": { + "summary": "Get supported SKUs", + "description": "The skus action returns the list of SKUs that DMS supports.", + "tags": [ + "Standard operation", + "GET" + ], + "operationId": "ResourceSkus_ListSkus", + "x-ms-examples": { + "ListSkus": { "$ref": "./examples/ResourceSkus_ListSkus.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Got SKUs", + "schema": { + "$ref": "./definitions/ResourceSkus.json#/definitions/ResourceSkusResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}": { + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "put": { + "summary": "Create or update DMS Instance", + "description": "The services resource is the top-level resource that represents the Data Migration Service. The PUT method creates a new service or updates an existing one. When a service is updated, existing child resources (i.e. tasks) are unaffected. Services currently support a single kind, \"vm\", which refers to a VM-based service, although other kinds may be added in the future. This method can change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad Request (\"ServiceIsBusy\"). The provider will reply when successful with 200 OK or 201 Created. Long-running operations use the provisioningState property.", + "tags": [ + "Service resource", + "Standard operation", + "PUT" + ], + "operationId": "Services_CreateOrUpdate", + "x-ms-examples": { + "Services_CreateOrUpdate": { "$ref": "./examples/Services_CreateOrUpdate.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/service" + } + ], + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Service updated", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationService" + } + }, + "201": { + "description": "Service created (use provisioningState)", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationService" + } + }, + "202": { + "description": "Update accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "get": { + "summary": "Get DMS Service Instance", + "description": "The services resource is the top-level resource that represents the Data Migration Service. The GET method retrieves information about a service instance.", + "tags": [ + "Service resource", + "Standard operation", + "GET" + ], + "operationId": "Services_Get", + "x-ms-examples": { + "Services_CreateOrUpdate": { "$ref": "./examples/Services_Get.json" } + }, + "responses": { + "200": { + "description": "A service instance resource", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationService" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "delete": { + "summary": "Delete DMS Service Instance", + "description": "The services resource is the top-level resource that represents the Data Migration Service. The DELETE method deletes a service. Any running tasks will be canceled.", + "tags": [ + "Service resource", + "Standard operation", + "DELETE" + ], + "parameters": [ + { + "$ref": "#/parameters/deleteRunningTasks" + } + ], + "operationId": "Services_Delete", + "x-ms-examples": { + "Services_CreateOrUpdate": { "$ref": "./examples/Services_Delete.json" } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Service resource deleted" + }, + "202": { + "description": "Deletion accepted" + }, + "204": { + "description": "Service not found" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "patch": { + "summary": "Create or update DMS Service Instance", + "description": "The services resource is the top-level resource that represents the Data Migration Service. The PATCH method updates an existing service. This method can change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad Request (\"ServiceIsBusy\").", + "tags": [ + "Service resource", + "Standard operation", + "PATCH" + ], + "operationId": "Services_Update", + "x-ms-examples": { + "Services_CreateOrUpdate": { "$ref": "./examples/Services_Update.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/service" + } + ], + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Service resource updated", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationService" + } + }, + "202": { + "description": "Update accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus": { + "post": { + "summary": "Check service health status", + "description": "The services resource is the top-level resource that represents the Data Migration Service. This action performs a health check and returns the status of the service and virtual machine size.", + "tags": [ + "Service resource", + "Custom operation", + "POST" + ], + "operationId": "Services_CheckStatus", + "x-ms-examples": { + "Services_CheckStatus": { "$ref": "./examples/Services_CheckStatus.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Health checked", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationServiceStatusResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start": { + "post": { + "summary": "Start service", + "description": "The services resource is the top-level resource that represents the Data Migration Service. This action starts the service and the service can be used for data migration.", + "tags": [ + "Service resource", + "Custom operation", + "POST" + ], + "operationId": "Services_Start", + "x-ms-examples": { + "Services_Start": { "$ref": "./examples/Services_Start.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "The service has already been started." + }, + "202": { + "description": "The request to start service is accepted." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop": { + "post": { + "summary": "Stop service", + "description": "The services resource is the top-level resource that represents the Data Migration Service. This action stops the service and the service cannot be used for data migration. The service owner won't be billed when the service is stopped.", + "tags": [ + "Service resource", + "Custom operation", + "POST" + ], + "operationId": "Services_Stop", + "x-ms-examples": { + "Services_Stop": { "$ref": "./examples/Services_Stop.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "The service has already been stopped." + }, + "202": { + "description": "The request to stop service is accepted." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus": { + "get": { + "summary": "Get compatible SKUs", + "description": "The services resource is the top-level resource that represents the Data Migration Service. The skus action returns the list of SKUs that a service resource can be updated to.", + "tags": [ + "Service resource", + "Standard operation", + "GET" + ], + "operationId": "Services_ListSkus", + "x-ms-examples": { + "Services_ListSkus": { "$ref": "./examples/Services_ListSkus.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Got SKUs", + "schema": { + "$ref": "./definitions/Services.json#/definitions/ServiceSkuList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks": { + "get": { + "summary": "Get tasks in a service", + "description": "The services resource is the top-level resource that represents the Data Migration Service. This method returns a list of tasks owned by a service resource. Some tasks may have a status of Unknown, which indicates that an error occurred while querying the status of that task.", + "tags": [ + "Service resource", + "Standard operation", + "GET" + ], + "operationId": "Tasks_List", + "x-ms-examples": { + "Tasks_List": { "$ref": "./examples/Tasks_List.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/apiVersion" + }, + { + "$ref": "#/parameters/taskType" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Got tasks", + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/TaskList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability": { + "post": { + "summary": "Check nested resource name validity and availability", + "description": "This method checks whether a proposed nested resource name is valid and available.", + "tags": [ + "Custom operation", + "POST" + ], + "operationId": "Services_CheckChildrenNameAvailability", + "x-ms-examples": { + "Services_CheckChildrenNameAvailability": { "$ref": "./examples/Services_CheckChildrenNameAvailability.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/apiVersion" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/requestedName" + } + ], + "responses": { + "200": { + "description": "Name checked", + "schema": { + "$ref": "./definitions/Common.json#/definitions/NameAvailabilityResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services": { + "get": { + "summary": "Get services in resource group", + "description": "The Services resource is the top-level resource that represents the Data Migration Service. This method returns a list of service resources in a resource group.", + "tags": [ + "Service resource", + "Standard operation", + "GET" + ], + "operationId": "Services_ListByResourceGroup", + "x-ms-examples": { + "Services_ListByResourceGroup": { "$ref": "./examples/Services_ListByResourceGroup.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Got services", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationServiceList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/services": { + "get": { + "summary": "Get services in subscription", + "description": "The services resource is the top-level resource that represents the Data Migration Service. This method returns a list of service resources in a subscription.", + "tags": [ + "Service resource", + "Standard operation", + "GET" + ], + "operationId": "Services_List", + "x-ms-examples": { + "Services_List": { "$ref": "./examples/Services_List.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Got services", + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationServiceList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}": { + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/taskName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "put": { + "summary": "Create or update task", + "description": "The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The PUT method creates a new task or updates an existing one, although since tasks have no mutable custom properties, there is little reason to update an exising one.", + "tags": [ + "Task resource", + "Standard operation", + "PUT" + ], + "operationId": "Tasks_CreateOrUpdate", + "x-ms-examples": { + "Tasks_CreateOrUpdate": { "$ref": "./examples/Tasks_CreateOrUpdate.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/projectTask" + } + ], + "responses": { + "200": { + "description": "Task updated", + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/ProjectTask" + } + }, + "201": { + "description": "Task created", + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/ProjectTask" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "get": { + "summary": "Get task information", + "description": "The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The GET method retrieves information about a task.", + "tags": [ + "Task resource", + "Standard operation", + "GET" + ], + "operationId": "Tasks_Get", + "x-ms-examples": { + "Tasks_Get": { "$ref": "./examples/Tasks_Get.json" } + }, + "parameters": [ + { + "name": "$expand", + "description": "Expand the response", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "A task resource", + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/ProjectTask" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "delete": { + "summary": "Delete task", + "description": "The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The DELETE method deletes a task, canceling it first if it's running.", + "tags": [ + "Task resource", + "Standard operation", + "DELETE" + ], + "parameters": [ + { + "$ref": "#/parameters/deleteRunningTasks" + } + ], + "operationId": "Tasks_Delete", + "x-ms-examples": { + "Tasks_Delete": { "$ref": "./examples/Tasks_Delete.json" } + }, + "responses": { + "200": { + "description": "Task resource deleted" + }, + "204": { + "description": "Not found" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "patch": { + "summary": "Create or update task", + "description": "The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The PATCH method updates an existing task, but since tasks have no mutable custom properties, there is little reason to do so.", + "tags": [ + "Task resource", + "Standard operation", + "PATCH" + ], + "operationId": "Tasks_Update", + "x-ms-examples": { + "Tasks_Update": { "$ref": "./examples/Tasks_Update.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/projectTask" + } + ], + "responses": { + "200": { + "description": "Task resource updated", + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/ProjectTask" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel": { + "post": { + "summary": "Cancel a task", + "description": "The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. This method cancels a task if it's currently queued or running.", + "tags": [ + "Task resource", + "Custom operation", + "POST" + ], + "operationId": "Tasks_Cancel", + "x-ms-examples": { + "Tasks_Cancel": { "$ref": "./examples/Tasks_Cancel.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/taskName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Task canceled", + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/ProjectTask" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects": { + "get": { + "summary": "Get projects in a service", + "description": "The project resource is a nested resource representing a stored migration project. This method returns a list of projects owned by a service resource.", + "tags": [ + "Project resource", + "Standard operation", + "GET" + ], + "operationId": "Projects_List", + "x-ms-examples": { + "Projects_List": { "$ref": "./examples/Projects_List.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "List of projects", + "schema": { + "$ref": "./definitions/Projects.json#/definitions/ProjectList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}": { + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "put": { + "summary": "Create or update project", + "description": "The project resource is a nested resource representing a stored migration project. The PUT method creates a new project or updates an existing one.", + "tags": [ + "Project resource", + "Standard operation", + "PUT" + ], + "operationId": "Projects_CreateOrUpdate", + "x-ms-examples": { + "Projects_CreateOrUpdate": { "$ref": "./examples/Projects_CreateOrUpdate.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/project" + } + ], + "responses": { + "200": { + "description": "Project updated", + "schema": { + "$ref": "./definitions/Projects.json#/definitions/Project" + } + }, + "201": { + "description": "Project created", + "schema": { + "$ref": "./definitions/Projects.json#/definitions/Project" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "get": { + "summary": "Get project information", + "description": "The project resource is a nested resource representing a stored migration project. The GET method retrieves information about a project.", + "tags": [ + "Project resource", + "Standard operation", + "GET" + ], + "operationId": "Projects_Get", + "x-ms-examples": { + "Projects_Get": { "$ref": "./examples/Projects_Get.json" } + }, + "responses": { + "200": { + "description": "A project resource", + "schema": { + "$ref": "./definitions/Projects.json#/definitions/Project" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "delete": { + "summary": "Delete project", + "description": "The project resource is a nested resource representing a stored migration project. The DELETE method deletes a project.", + "tags": [ + "Project resource", + "Standard operation", + "DELETE" + ], + "parameters": [ + { + "$ref": "#/parameters/deleteRunningTasks" + } + ], + "operationId": "Projects_Delete", + "x-ms-examples": { + "Projects_Delete": { "$ref": "./examples/Projects_Delete.json" } + }, + "responses": { + "200": { + "description": "Project resource deleted" + }, + "204": { + "description": "Not found" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + }, + "patch": { + "summary": "Update project", + "description": "The project resource is a nested resource representing a stored migration project. The PATCH method updates an existing project.", + "tags": [ + "Project resource", + "Standard operation", + "PATCH" + ], + "operationId": "Projects_Update", + "x-ms-examples": { + "Projects_Update": { "$ref": "./examples/Projects_Update.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/project" + } + ], + "responses": { + "200": { + "description": "Project resource updated", + "schema": { + "$ref": "./definitions/Projects.json#/definitions/Project" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/checkNameAvailability": { + "post": { + "summary": "Check name validity and availability", + "description": "This method checks whether a proposed top-level resource name is valid and available.", + "tags": [ + "Standard operation", + "POST" + ], + "operationId": "Services_CheckNameAvailability", + "x-ms-examples": { + "Services_CheckNameAvailability": { "$ref": "./examples/Services_CheckNameAvailability.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersion" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/requestedName" + } + ], + "responses": { + "200": { + "description": "Name checked", + "schema": { + "$ref": "./definitions/Common.json#/definitions/NameAvailabilityResponse" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages": { + "get": { + "summary": "Get resource quotas and usage information", + "description": "This method returns region-specific quotas and resource usage information for the Data Migration Service.", + "tags": [ + "Standard operation", + "GET" + ], + "operationId": "Usages_List", + "x-ms-examples": { + "Services_Usages": { "$ref": "./examples/Usages_List.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Quotas returned", + "schema": { + "$ref": "./definitions/Common.json#/definitions/QuotaList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + }, + "/providers/Microsoft.DataMigration/operations": { + "get": { + "summary": "Get available resource provider actions (operations)", + "description": "Lists all available actions exposed by the Data Migration Service resource provider.", + "tags": [ + "Standard operation", + "GET" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "Operations_List": { "$ref": "./examples/Operations_List.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersion" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Got action list", + "schema": { + "$ref": "./definitions/Services.json#/definitions/ServiceOperationList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./definitions/Common.json#/definitions/ApiError" + } + } + } + } + } + }, + "parameters": { + "apiVersion": { + "name": "api-version", + "description": "Version of the API", + "in": "query", + "required": true, + "type": "string" + }, + "deleteRunningTasks": { + "name": "deleteRunningTasks", + "description": "Delete the resource even if it contains running tasks", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method" + }, + "groupName": { + "name": "groupName", + "description": "Name of the resource group", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "location": { + "name": "location", + "description": "The Azure region of the operation", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "project": { + "name": "parameters", + "description": "Information about the project", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions/Projects.json#/definitions/Project" + }, + "x-ms-parameter-location": "method" + }, + "projectName": { + "name": "projectName", + "description": "Name of the project", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "requestedName": { + "name": "parameters", + "description": "Requested name to validate", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions/Common.json#/definitions/NameAvailabilityRequest" + }, + "x-ms-parameter-location": "method" + }, + "taskName": { + "name": "taskName", + "description": "Name of the Task", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "taskType": { + "name": "taskType", + "description": "Filter tasks by task type", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "service": { + "name": "parameters", + "description": "Information about the service", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions/Services.json#/definitions/DataMigrationService" + }, + "x-ms-parameter-location": "method" + }, + "serviceName": { + "name": "serviceName", + "description": "Name of the service", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "description": "Identifier of the subscription", + "in": "path", + "required": true, + "type": "string" + }, + "projectTask": { + "name": "parameters", + "description": "Information about the task", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions/Tasks.json#/definitions/ProjectTask" + }, + "x-ms-parameter-location": "method" + }, + "timeoutMs": { + "name": "timeoutMs", + "description": "The number of milliseconds the task is allowed to run, up to 20000", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Common.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Common.json new file mode 100644 index 000000000000..5e38e8ce4a00 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Common.json @@ -0,0 +1,310 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ApiError": { + "type": "object", + "description": "Error information.", + "properties": { + "error": { + "description": "Error information in OData format", + "$ref": "#/definitions/ODataError" + } + } + }, + "NameAvailabilityResponse": { + "type": "object", + "description": "Indicates whether a proposed resource name is available", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "If true, the name is valid and available. If false, 'reason' describes why not." + }, + "reason": { + "type": "string", + "description": "The reason why the name is not available, if nameAvailable is false", + "enum": [ + "AlreadyExists", + "Invalid" + ], + "x-ms-enum": { + "name": "NameCheckFailureReason", + "modelAsString": true + } + }, + "message": { + "type": "string", + "description": "The localized reason why the name is not available, if nameAvailable is false" + } + } + }, + "NameAvailabilityRequest": { + "type": "object", + "description": "A resource type and proposed name", + "properties": { + "name": { + "type": "string", + "description": "The proposed resource name" + }, + "type": { + "type": "string", + "description": "The resource type chain (e.g. virtualMachines/extensions)" + } + } + }, + "ODataError": { + "type": "object", + "description": "Error information in OData format.", + "properties": { + "code": { + "type": "string", + "description": "The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'" + }, + "message": { + "type": "string", + "description": "The human-readable description of the error" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + }, + "description": "Inner errors that caused this error" + } + } + }, + "Quota": { + "type": "object", + "description": "Describes a quota for or usage details about a resource", + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "description": "The current value of the quota. If null or missing, the current value cannot be determined in the context of the request." + }, + "id": { + "type": "string", + "description": "The resource ID of the quota object" + }, + "limit": { + "type": "number", + "format": "double", + "description": "The maximum value of the quota. If null or missing, the quota has no maximum, in which case it merely tracks usage." + }, + "name": { + "type": "object", + "description": "The name of the quota", + "properties": { + "localizedValue": { + "type": "string", + "description": "The localized name of the quota" + }, + "value": { + "type": "string", + "description": "The unlocalized name (or ID) of the quota" + } + } + }, + "unit": { + "type": "string", + "description": "The unit for the quota, such as Count, Bytes, BytesPerSecond, etc." + } + } + }, + "QuotaList": { + "type": "object", + "description": "OData page of quota objects", + "properties": { + "value": { + "type": "array", + "description": "List of quotas", + "items": { + "$ref": "#/definitions/Quota" + } + }, + "nextLink": { + "type": "string", + "description": "URL to load the next page of quotas, or null or missing if this is the last page" + } + } + }, + "ReportableException": { + "type": "object", + "description": "Exception object for all custom exceptions", + "properties": { + "message": { + "type": "string", + "description": "Error message" + }, + "filePath": { + "type": "string", + "description": "The path to the file where exception occurred" + }, + "lineNumber": { + "type": "string", + "description": "The line number where exception occurred" + }, + "hResult": { + "type": "integer", + "description": "Coded numerical value that is assigned to a specific exception" + }, + "stackTrace": { + "type": "string", + "description": "Stack trace" + } + } + }, + "Resource": { + "description": "ARM 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." + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "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": "Resource location." + } + }, + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ConnectionInfo": { + "type": "object", + "description": "Defines the connection properties of a server", + "x-ms-discriminator-value": "Unknown", + "properties": { + "type": { + "type": "string", + "description": "Type of connection info" + }, + "userName": { + "type": "string", + "description": "User name" + }, + "password": { + "type": "string", + "description": "Password credential." + } + }, + "required": [ "type" ], + "discriminator": "type" + }, + "AuthenticationType": { + "type": "string", + "description": "An enumeration of possible authentication types when connecting", + "enum": [ + "None", + "WindowsAuthentication", + "SqlAuthentication", + "ActiveDirectoryIntegrated", + "ActiveDirectoryPassword" + ], + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "SqlConnectionInfo": { + "x-ms-discriminator-value": "SqlConnectionInfo", + "type": "object", + "description": "Information for connecting to SQL database server", + "allOf": [ + { + "$ref": "#/definitions/ConnectionInfo" + } + ], + "properties": { + "dataSource": { + "type": "string", + "description": "Data source in the format Protocol:MachineName\\SQLServerInstanceName,PortNumber" + }, + "authentication": { + "$ref": "#/definitions/AuthenticationType", + "description": "Authentication type to use for connection" + }, + "encryptConnection": { + "type": "boolean", + "description": "Whether to encrypt the connection", + "default": true + }, + "additionalSettings": { + "type": "string", + "description": "Additional connection settings" + }, + "trustServerCertificate": { + "type": "boolean", + "description": "Whether to trust the server certificate", + "default": false + } + }, + "required": [ "dataSource" ] + }, + "ServerLevelPermissionsGroup": { + "type": "string", + "description": "Permission group for validations. These groups will run a set of permissions for validating user activity. Select the permission group for the activity that you are performing.", + "enum": [ + "Default", + "MigrationFromSqlServerToAzureDB" + ], + "x-ms-enum": { + "name": "ServerLevelPermissionsGroup", + "modelAsString": true + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToSourceSqlServerTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToSourceSqlServerTask.json new file mode 100644 index 000000000000..78b3551bb4c6 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToSourceSqlServerTask.json @@ -0,0 +1,134 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ConnectToSourceSqlServerTaskInput": { + "type": "object", + "description": "Input for the task that validates connection to SQL Server and also validates source server requirements", + "properties": { + "sourceConnectionInfo": { + "description": "Connection information for Source SQL Server", + "$ref": "./Common.json#/definitions/SqlConnectionInfo" + }, + "checkPermissionsGroup": { + "$ref": "./Common.json#/definitions/ServerLevelPermissionsGroup", + "description": "Permission group for validations" + } + }, + "required": [ + "sourceConnectionInfo" + ] + }, + "ConnectToSourceSqlServerTaskOutput": { + "type": "object", + "description": "Output for the task that validates connection to SQL Server and also validates source server requirements", + "properties": { + "resultType": { + "description": "Type of result - database level or task level", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ], + "required": [ "resultType" ], + "discriminator": "resultType" + }, + "ConnectToSourceSqlServerTaskOutputTaskLevel": { + "x-ms-discriminator-value": "TaskLevelOutput", + "type": "object", + "description": "Task level output for the task that validates connection to SQL Server and also validates source server requirements", + "properties": { + "databases": { + "type": "string", + "description": "Source databases as a map from database name to database id", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "sourceServerVersion": { + "type": "string", + "description": "Source server version", + "readOnly": true + }, + "sourceServerBrandVersion": { + "type": "string", + "description": "Source server brand version", + "readOnly": true + }, + "validationErrors": { + "description": "Validation errors", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectToSourceSqlServerTaskOutput" + } + ] + }, + "ConnectToSourceSqlServerTaskOutputDatabaseLevel": { + "x-ms-discriminator-value": "DatabaseLevelOutput", + "type": "object", + "description": "Database level output for the task that validates connection to SQL Server and also validates source server requirements", + "properties": { + "name": { + "type": "string", + "description": "Database name", + "readOnly": true + }, + "sizeMB": { + "type": "number", + "format": "double", + "description": "Size of the file in megabytes", + "readOnly": true + }, + "databaseFiles": { + "type": "array", + "description": "The list of database files", + "items": { + "$ref": "./TasksCommon.json#/definitions/DatabaseFileInfo" + }, + "readOnly": true + }, + "compatibilityLevel": { + "$ref": "./TasksCommon.json#/definitions/DatabaseCompatLevel", + "description": "SQL Server compatibility level of database", + "readOnly": true + }, + "databaseState": { + "$ref": "./TasksCommon.json#/definitions/DatabaseState", + "description": "State of the database", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectToSourceSqlServerTaskOutput" + } + ] + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlDbTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlDbTask.json new file mode 100644 index 000000000000..a6da8b38ef4a --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlDbTask.json @@ -0,0 +1,63 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ConnectToTargetSqlDbTaskInput": { + "type": "object", + "description": "Input for the task that validates connection to SQL DB and target server requirements", + "properties": { + "targetConnectionInfo": { + "description": "Connection information for target SQL DB", + "$ref": "./Common.json#/definitions/SqlConnectionInfo" + } + }, + "required": [ + "targetConnectionInfo" + ] + }, + "ConnectToTargetSqlDbTaskOutput": { + "type": "object", + "description": "Output for the task that validates connection to SQL DB and target server requirements", + "properties": { + "databases": { + "type": "string", + "description": "Source databases as a map from database name to database id", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "targetServerVersion": { + "type": "string", + "description": "Version of the target server", + "readOnly": true + }, + "targetServerBrandVersion": { + "type": "string", + "description": "Target server brand version", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ] + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlMITask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlMITask.json new file mode 100644 index 000000000000..578ddf9a8e05 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlMITask.json @@ -0,0 +1,63 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ConnectToTargetSqlMITaskInput": { + "type": "object", + "description": "Input for the task that validates connection to Azure SQL Database Managed Instance.", + "properties": { + "targetConnectionInfo": { + "description": "Connection information for target SQL Server", + "$ref": "./Common.json#/definitions/SqlConnectionInfo" + } + }, + "required": [ + "targetConnectionInfo" + ] + }, + "ConnectToTargetSqlMITaskOutput": { + "type": "object", + "description": "Output for the task that validates connection to Azure SQL Database Managed Instance.", + "properties": { + "targetServerVersion": { + "type": "string", + "description": "Target server version", + "readOnly": true + }, + "targetServerBrandVersion": { + "type": "string", + "description": "Target server brand version", + "readOnly": true + }, + "validationErrors": { + "description": "Validation errors", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ] + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/GetUserTablesSqlTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/GetUserTablesSqlTask.json new file mode 100644 index 000000000000..bef3b25403ba --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/GetUserTablesSqlTask.json @@ -0,0 +1,88 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "GetUserTablesSqlTaskInput": { + "type": "object", + "description": "Input for the task that collects user tables for the given list of databases", + "properties": { + "connectionInfo": { + "description": "Connection information for SQL Server", + "$ref": "./Common.json#/definitions/SqlConnectionInfo" + }, + "selectedDatabases": { + "type": "array", + "description": "List of database names to collect tables for", + "items": { + "type": "string" + } + } + }, + "required": [ + "connectionInfo", + "selectedDatabases" + ] + }, + "GetUserTablesSqlTaskOutput": { + "type": "object", + "description": "Output of the task that collects user tables for the given list of databases", + "properties": { + "databasesToTables": { + "type": "string", + "description": "Mapping from database name to list of tables", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseTable" + } + }, + "readOnly": true + }, + "validationErrors": { + "description": "Validation errors", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ] + }, + "DatabaseTable": { + "type": "object", + "description": "Table properties", + "properties": { + "hasRows": { + "type": "boolean", + "description": "Indicates whether table is empty or not", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Schema-qualified name of the table", + "readOnly": true + } + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlDbTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlDbTask.json new file mode 100644 index 000000000000..975df49e559a --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlDbTask.json @@ -0,0 +1,391 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "MigrateSqlServerSqlDbTaskInput": { + "type": "object", + "description": "Input for the task that migrates on-prem SQL Server databases to Azure SQL Database", + "properties": { + "selectedDatabases": { + "type": "array", + "description": "Databases to migrate", + "items": { + "$ref": "#/definitions/MigrateSqlServerSqlDbDatabaseInput" + } + }, + "validationOptions": { + "description": "Options for enabling various post migration validations. Available options, \n 1.) Data Integrity Check: Performs a checksum based comparison on source and target tables after the migration to ensure the correctness of the data. \n 2.) Schema Validation: Performs a thorough schema comparison between the source and target tables and provides a list of differences between the source and target database, 3.) Query Analysis: Executes a set of queries picked up automatically either from the Query Plan Cache or Query Store and execute them and compares the execution time between the source and target database.", + "$ref": "./MigrationValidation.json#/definitions/MigrationValidationOptions" + } + }, + "required": [ + "selectedDatabases" + ], + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/SqlMigrationTaskInput" + } + ] + }, + "MigrateSqlServerSqlDbTaskOutput": { + "type": "object", + "description": "Output for the task that migrates on-prem SQL Server databases to Azure SQL Database", + "properties": { + "resultType": { + "description": "Result type", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ], + "required": [ "resultType" ], + "discriminator": "resultType" + }, + "MigrateSqlServerSqlDbTaskOutputMigrationLevel": { + "x-ms-discriminator-value": "MigrationLevelOutput", + "type": "object", + "properties": { + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Migration start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Migration end time", + "readOnly": true + }, + "durationInSeconds": { + "type": "integer", + "format": "int64", + "description": "Duration of task execution in seconds.", + "readOnly": true + }, + "status": { + "$ref": "./TasksCommon.json#/definitions/MigrationStatus", + "description": "Current status of migration", + "readOnly": true + }, + "statusMessage": { + "type": "string", + "description": "Migration status message", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Migration progress message", + "readOnly": true + }, + "databases": { + "type": "string", + "description": "Selected databases as a map from database name to database id", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "databaseSummary": { + "type": "string", + "description": "Summary of database results in the migration", + "additionalProperties": { + "$ref": "#/definitions/DatabaseSummaryResult" + }, + "readOnly": true + }, + "migrationReportResult": { + "type": "object", + "description": "Migration Report Result, provides unique url for downloading your migration report.", + "$ref": "./MigrationValidation.json#/definitions/MigrationReportResult" + }, + "sourceServerVersion": { + "type": "string", + "description": "Source server version", + "readOnly": true + }, + "sourceServerBrandVersion": { + "type": "string", + "description": "Source server brand version", + "readOnly": true + }, + "targetServerVersion": { + "type": "string", + "description": "Target server version", + "readOnly": true + }, + "targetServerBrandVersion": { + "type": "string", + "description": "Target server brand version", + "readOnly": true + }, + "exceptionsAndWarnings": { + "description": "Migration exceptions and warnings.", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlDbTaskOutput" + } + ] + }, + "MigrateSqlServerSqlDbTaskOutputDatabaseLevel": { + "type": "object", + "x-ms-discriminator-value": "DatabaseLevelOutput", + "properties": { + "databaseName": { + "type": "string", + "description": "Name of the item", + "readOnly": true + }, + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Migration start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Migration end time", + "readOnly": true + }, + "state": { + "$ref": "./TasksCommon.json#/definitions/MigrationState", + "description": "Current state of migration", + "readOnly": true + }, + "stage": { + "$ref": "./TasksCommon.json#/definitions/DatabaseMigrationStage", + "description": "Migration stage that this database is in", + "readOnly": true + }, + "statusMessage": { + "type": "string", + "description": "Status message", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Migration progress message", + "readOnly": true + }, + "numberOfObjects": { + "type": "integer", + "format": "int64", + "description": "Number of objects", + "readOnly": true + }, + "numberOfObjectsCompleted": { + "type": "integer", + "format": "int64", + "description": "Number of successfully completed objects", + "readOnly": true + }, + "errorCount": { + "type": "integer", + "format": "int64", + "description": "Number of database/object errors.", + "readOnly": true + }, + "errorPrefix": { + "type": "string", + "description": "Wildcard string prefix to use for querying all errors of the item", + "readOnly": true + }, + "resultPrefix": { + "type": "string", + "description": "Wildcard string prefix to use for querying all sub-tem results of the item", + "readOnly": true + }, + "exceptionsAndWarnings": { + "description": "Migration exceptions and warnings.", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + }, + "objectSummary": { + "type": "string", + "description": "Summary of object results in the migration", + "additionalProperties": { + "$ref": "./TasksCommon.json#/definitions/DataItemMigrationSummaryResult" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlDbTaskOutput" + } + ] + }, + "MigrateSqlServerSqlDbTaskOutputTableLevel": { + "type": "object", + "x-ms-discriminator-value": "TableLevelOutput", + "properties": { + "objectName": { + "type": "string", + "description": "Name of the item", + "readOnly": true + }, + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Migration start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Migration end time", + "readOnly": true + }, + "state": { + "$ref": "./TasksCommon.json#/definitions/MigrationState", + "description": "Current state of migration", + "readOnly": true + }, + "statusMessage": { + "type": "string", + "description": "Status message", + "readOnly": true + }, + "itemsCount": { + "type": "integer", + "format": "int64", + "description": "Number of items", + "readOnly": true + }, + "itemsCompletedCount": { + "type": "integer", + "format": "int64", + "description": "Number of successfully completed items", + "readOnly": true + }, + "errorPrefix": { + "type": "string", + "description": "Wildcard string prefix to use for querying all errors of the item", + "readOnly": true + }, + "resultPrefix": { + "type": "string", + "description": "Wildcard string prefix to use for querying all sub-tem results of the item", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlDbTaskOutput" + } + ] + }, + "MigrateSqlServerSqlDbTaskOutputError": { + "type": "object", + "x-ms-discriminator-value": "ErrorOutput", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the exception", + "readOnly": true + }, + "error": { + "$ref": "./Common.json#/definitions/ReportableException", + "description": "Migration error", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlDbTaskOutput" + } + ] + }, + "MigrateSqlServerSqlDbDatabaseInput": { + "type": "object", + "description": "Database specific information for SQL to Azure SQL DB migration task inputs", + "properties": { + "name": { + "type": "string", + "description": "Name of the database" + }, + "targetDatabaseName": { + "type": "string", + "description": "Name of target database. Note: Target database will be truncated before starting migration." + }, + "makeSourceDbReadOnly": { + "type": "boolean", + "description": "Whether to set database read only before migration" + }, + "tableMap": { + "type": "object", + "description": "Mapping of source to target tables", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DatabaseSummaryResult": { + "type": "object", + "description": "Summary of database results in the migration", + "properties": { + "sizeMB": { + "type": "number", + "format": "double", + "description": "Size of the database in megabytes", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/DataItemMigrationSummaryResult" + } + ] + }, + "MigrateSqlServerSqlDbTaskOutputValidationResult": { + "x-ms-discriminator-value": "MigrationValidationOutput", + "type": "object", + "$ref": "./MigrationValidation.json#/definitions/MigrationValidationResult", + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlDbTaskOutput" + } + ] + }, + "MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult": { + "x-ms-discriminator-value": "MigrationDatabaseLevelValidationOutput", + "type": "object", + "$ref": "./MigrationValidation.json#/definitions/MigrationValidationDatabaseLevelResult", + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlDbTaskOutput" + } + ] + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlMITask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlMITask.json new file mode 100644 index 000000000000..3c6040d13942 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlMITask.json @@ -0,0 +1,214 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "MigrateSqlServerSqlMITaskInput": { + "type": "object", + "description": "Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance.", + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/SqlMigrationTaskInput" + } + ], + "properties": { + "selectedDatabases": { + "description": "Databases to migrate", + "type": "array", + "items": { + "$ref": "./TasksCommon.json#/definitions/MigrateSqlServerSqlMIDatabaseInput" + } + }, + "backupFileShare": { + "$ref": "./TasksCommon.json#/definitions/FileShare", + "description": "Backup file share information for all selected databases." + }, + "backupBlobShare": { + "$ref": "./TasksCommon.json#/definitions/BlobShare", + "description": "SAS URI of Azure Storage Account Container to be used for storing backup files." + } + }, + "required": [ + "selectedDatabases", + "backupBlobShare" + ] + }, + "MigrateSqlServerSqlMITaskOutput": { + "type": "object", + "description": "Output for task that migrates SQL Server databases to Azure SQL Database Managed Instance.", + "properties": { + "resultType": { + "description": "Result type", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ], + "required": [ "resultType" ], + "discriminator": "resultType" + }, + "MigrateSqlServerSqlMITaskOutputMigrationLevel": { + "type": "object", + "x-ms-discriminator-value": "MigrationLevelOutput", + "properties": { + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Migration start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Migration end time", + "readOnly": true + }, + "status": { + "$ref": "TasksCommon.json#/definitions/MigrationStatus", + "description": "Current status of migration", + "readOnly": true + }, + "state": { + "$ref": "TasksCommon.json#/definitions/MigrationState", + "description": "Current state of migration", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Migration progress message", + "readOnly": true + }, + "databases": { + "type": "string", + "description": "Selected databases as a map from database name to database id", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "sourceServerVersion": { + "type": "string", + "description": "Source server version", + "readOnly": true + }, + "sourceServerBrandVersion": { + "type": "string", + "description": "Source server brand version", + "readOnly": true + }, + "targetServerVersion": { + "type": "string", + "description": "Target server version", + "readOnly": true + }, + "targetServerBrandVersion": { + "type": "string", + "description": "Target server brand version", + "readOnly": true + }, + "exceptionsAndWarnings": { + "description": "Migration exceptions and warnings.", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlMITaskOutput" + } + ] + }, + "MigrateSqlServerSqlMITaskOutputDatabaseLevel": { + "type": "object", + "x-ms-discriminator-value": "DatabaseLevelOutput", + "properties": { + "databaseName": { + "type": "string", + "description": "Name of the database", + "readOnly": true + }, + "state": { + "$ref": "./TasksCommon.json#/definitions/MigrationState", + "description": "Current state of migration", + "readOnly": true + }, + "stage": { + "$ref": "./TasksCommon.json#/definitions/DatabaseMigrationStage", + "description": "Current stage of migration", + "readOnly": true + }, + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Migration start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Migration end time", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Migration progress message", + "readOnly": true + }, + "exceptionsAndWarnings": { + "description": "Migration exceptions and warnings", + "type": "array", + "items": { + "$ref": "Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlMITaskOutput" + } + ] + }, + "MigrateSqlServerSqlMITaskOutputError": { + "type": "object", + "x-ms-discriminator-value": "ErrorOutput", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the exception", + "readOnly": true + }, + "error": { + "$ref": "Common.json#/definitions/ReportableException", + "description": "Migration error", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/MigrateSqlServerSqlMITaskOutput" + } + ] + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrationValidation.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrationValidation.json new file mode 100644 index 000000000000..ac34c05bd422 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrationValidation.json @@ -0,0 +1,415 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "MigrationValidationOptions": { + "type": "object", + "description": "Types of validations to run after the migration", + "properties": { + "enableSchemaValidation": { + "type": "boolean", + "description": "Allows to compare the schema information between source and target." + }, + "enableDataIntegrityValidation": { + "type": "boolean", + "description": "Allows to perform a checksum based data integrity validation between source and target for the selected database / tables ." + }, + "enableQueryAnalysisValidation": { + "type": "boolean", + "description": "Allows to perform a quick and intelligent query analysis by retrieving queries from the source database and executes them in the target. The result will have execution statistics for executions in source and target databases for the extracted queries." + } + } + }, + "MigrationReportResult": { + "type": "object", + "description": "Migration validation report result, contains the url for downloading the generated report.", + "properties": { + "id": { + "type": "string", + "description": "Migration validation result identifier" + }, + "reportUrl": { + "type": "string", + "description": "The url of the report." + } + } + }, + "MigrationValidationResult": { + "type": "object", + "description": "Migration Validation Result", + "properties": { + "id": { + "type": "string", + "description": "Migration validation result identifier", + "readOnly": true + }, + "migrationId": { + "type": "string", + "description": "Migration Identifier", + "readOnly": true + }, + "summaryResults": { + "type": "object", + "description": "Validation summary results for each database", + "additionalProperties": { + "$ref": "#/definitions/MigrationValidationDatabaseSummaryResult" + } + }, + "status": { + "$ref": "#/definitions/ValidationStatus", + "description": "Current status of validation at the migration level. Status from the database validation result status will be aggregated here.", + "readOnly": true + } + } + }, + "MigrationValidationDatabaseSummaryResult": { + "type": "object", + "description": "Migration Validation Database level summary result", + "properties": { + "id": { + "type": "string", + "description": "Result identifier", + "readOnly": true + }, + "migrationId": { + "type": "string", + "description": "Migration Identifier", + "readOnly": true + }, + "sourceDatabaseName": { + "type": "string", + "description": "Name of the source database", + "readOnly": true + }, + "targetDatabaseName": { + "type": "string", + "description": "Name of the target database", + "readOnly": true + }, + + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Validation start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Validation end time", + "readOnly": true + }, + "status": { + "$ref": "#/definitions/ValidationStatus", + "description": "Current status of validation at the database level", + "readOnly": true + } + } + }, + "MigrationValidationDatabaseLevelResult": { + "type": "object", + "description": "Database level validation results", + "properties": { + "id": { + "type": "string", + "description": "Result identifier", + "readOnly": true + }, + "migrationId": { + "type": "string", + "description": "Migration Identifier", + "readOnly": true + }, + "sourceDatabaseName": { + "type": "string", + "description": "Name of the source database", + "readOnly": true + }, + "targetDatabaseName": { + "type": "string", + "description": "Name of the target database", + "readOnly": true + }, + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Validation start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Validation end time", + "readOnly": true + }, + "dataIntegrityValidationResult": { + "description": "Provides data integrity validation result between the source and target tables that are migrated.", + "$ref": "#/definitions/DataIntegrityValidationResult", + "readOnly": true + }, + "schemaValidationResult": { + "description": "Provides schema comparison result between source and target database", + "$ref": "#/definitions/SchemaComparisonValidationResult", + "readOnly": true + }, + + "queryAnalysisValidationResult": { + "description": "Results of some of the query execution result between source and target database", + "$ref": "#/definitions/QueryAnalysisValidationResult", + "readOnly": true + }, + "status": { + "$ref": "#/definitions/ValidationStatus", + "description": "Current status of validation at the database level", + "readOnly": true + } + } + }, + "DataIntegrityValidationResult": { + "type": "object", + "description": "Results for checksum based Data Integrity validation results", + "properties": { + "failedObjects": { + "type": "object", + "description": "List of failed table names of source and target pair", + "additionalProperties": { + "type": "string" + } + }, + "validationErrors": { + "type": "array", + "description": "List of errors that happened while performing data integrity validation", + "$ref": "#/definitions/ValidationError" + } + } + }, + "SchemaComparisonValidationResult": { + "type": "object", + "description": "Results for schema comparison between the source and target", + "properties": { + "schemaDifferences": { + "type": "array", + "description": "List of schema differences between the source and target databases", + "$ref": "#/definitions/SchemaComparisonValidationResultType" + }, + "validationErrors": { + "type": "array", + "description": "List of errors that happened while performing schema compare validation", + "$ref": "#/definitions/ValidationError" + }, + "sourceDatabaseObjectCount": { + "type": "object", + "description": "Count of source database objects", + "additionalProperties": { + "type": "integer", + "format": "int64" + } + }, + "targetDatabaseObjectCount": { + "type": "object", + "description": "Count of target database objects", + "additionalProperties": { + "type": "integer", + "format": "int64" + } + } + } + }, + "SchemaComparisonValidationResultType": { + "type": "object", + "description": "Description about the errors happen while performing migration validation", + "properties": { + "objectName": { + "type": "string", + "description": "Name of the object that has the difference" + }, + "objectType": { + "type": "object", + "$ref": "./TasksCommon.json#/definitions/DatabaseObjectType", + "description": "Type of the object that has the difference. e.g (Table/View/StoredProcedure)" + }, + "updateAction": { + "type": "string", + "description": "Update action type with respect to target", + "$ref": "#/definitions/UpdateActionType" + } + } + }, + "UpdateActionType": { + "type": "string", + "description": "Type of the actual difference for the compared object, while performing schema comparison", + "enum": [ + "DeletedOnTarget", + "ChangedOnTarget", + "AddedOnTarget" + ], + "x-ms-enum": { + "name": "UpdateActionType", + "modelAsString": true + } + }, + "QueryAnalysisValidationResult": { + "type": "object", + "description": "Results for query analysis comparison between the source and target", + "properties": { + "queryResults": { + "type": "array", + "description": "List of queries executed and it's execution results in source and target", + "$ref": "#/definitions/QueryExecutionResult" + }, + "validationErrors": { + "type": "array", + "description": "Errors that are part of the execution", + "$ref": "#/definitions/ValidationError" + } + } + }, + "QueryExecutionResult": { + "type": "object", + "description": "Describes query analysis results for execution in source and target", + "properties": { + "queryText": { + "type": "string", + "description": "Query text retrieved from the source server" + }, + "statementsInBatch": { + "type": "integer", + "format": "int64", + "description": "Total no. of statements in the batch" + }, + "sourceResult": { + "type": "object", + "description": "Query analysis result from the source", + "$ref": "#/definitions/ExecutionStatistics" + }, + "targetResult": { + "type": "object", + "description": "Query analysis result from the target", + "$ref": "#/definitions/ExecutionStatistics" + } + } + }, + "ExecutionStatistics": { + "type": "object", + "description": "Description about the errors happen while performing migration validation", + "properties": { + "executionCount": { + "type": "integer", + "format": "int64", + "description": "No. of query executions" + }, + "cpuTimeMs": { + "type": "number", + "format": "float", + "description": "CPU Time in millisecond(s) for the query execution" + }, + "elapsedTimeMs": { + "type": "number", + "format": "float", + "description": "Time taken in millisecond(s) for executing the query" + }, + "waitStats": { + "type": "object", + "description": "Dictionary of sql query execution wait types and the respective statistics", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/WaitStatistics" + } + }, + "hasErrors": { + "type": "boolean", + "description": "Indicates whether the query resulted in an error" + }, + "sqlErrors": { + "type": "array", + "description": "List of sql Errors", + "items": { + "type": "string" + } + } + } + }, + "WaitStatistics": { + "type": "object", + "description": "Wait statistics gathered during query batch execution", + "properties": { + "waitType": { + "type": "string", + "description": "Type of the Wait" + }, + "waitTimeMs": { + "type": "number", + "format": "float", + "default": 0, + "description": "Total wait time in millisecond(s) " + }, + "waitCount": { + "type": "integer", + "format": "int64", + "description": "Total no. of waits" + } + } + }, + "Severity": { + "type": "string", + "description": "Severity of the validation error", + "enum": [ + "Message", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "ValidationError": { + "type": "object", + "description": "Description about the errors happen while performing migration validation", + "properties": { + "text": { + "type": "string", + "description": "Error Text" + }, + "severity": { + "type": "string", + "description": "Severity of the error", + "$ref": "#/definitions/Severity" + } + } + }, + "ValidationStatus": { + "type": "string", + "description": "Current status of the validation", + "enum": [ + "Default", + "NotStarted", + "Initialized", + "InProgress", + "Completed", + "CompletedWithIssues", + "Failed", + "Stopped" + ], + "x-ms-enum": { + "name": "ValidationStatus", + "modelAsString": true + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Projects.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Projects.json new file mode 100644 index 000000000000..6a25354e4a93 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Projects.json @@ -0,0 +1,138 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "Project": { + "type": "object", + "description": "A project resource", + "properties": { + "properties": { + "description": "Project properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectProperties" + } + }, + "allOf": [ + { + "$ref": "./Common.json#/definitions/TrackedResource" + } + ] + }, + "ProjectList": { + "type": "object", + "description": "OData page of project resources", + "properties": { + "value": { + "type": "array", + "description": "List of projects", + "items": { + "$ref": "#/definitions/Project" + } + }, + "nextLink": { + "type": "string", + "description": "URL to load the next page of projects" + } + } + }, + "ProjectProperties": { + "type": "object", + "description": "Project-specific properties", + "properties": { + "sourcePlatform": { + "description": "Source platform for the project", + "$ref": "#/definitions/ProjectSourcePlatform" + }, + "targetPlatform": { + "description": "Target platform for the project", + "$ref": "#/definitions/ProjectTargetPlatform" + }, + "creationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "UTC Date and time when project was created" + }, + "sourceConnectionInfo": { + "$ref": "./Common.json#/definitions/ConnectionInfo", + "description": "Information for connecting to source" + }, + "targetConnectionInfo": { + "$ref": "./Common.json#/definitions/ConnectionInfo", + "description": "Information for connecting to target" + }, + "databasesInfo": { + "type": "array", + "description": "List of DatabaseInfo", + "items": { + "$ref": "#/definitions/DatabaseInfo" + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The project's provisioning state", + "enum": [ + "Deleting", + "Succeeded" + ], + "x-ms-enum": { + "name": "ProjectProvisioningState", + "modelAsString": true + } + } + }, + "required": [ "sourcePlatform", "targetPlatform" ] + }, + "DatabaseInfo": { + "type": "object", + "description": "Project Database Details", + "properties": { + "sourceDatabaseName": { + "type": "string", + "description": "Name of the database" + } + }, + "required": [ "sourceDatabaseName" ] + }, + "ProjectSourcePlatform": { + "type": "string", + "description": "Source platform of the project", + "enum": [ + "SQL", + "Unknown" + ], + "x-ms-enum": { + "name": "ProjectSourcePlatform", + "modelAsString": true + } + }, + "ProjectTargetPlatform": { + "type": "string", + "description": "Target platform of the project", + "enum": [ + "SQLDB", + "Unknown" + ], + "x-ms-enum": { + "name": "ProjectTargetPlatform", + "modelAsString": true + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ResourceSkus.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ResourceSkus.json new file mode 100644 index 000000000000..3ab6f31d0e24 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ResourceSkus.json @@ -0,0 +1,231 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ResourceSku": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of SKU." + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Specifies the tier of DMS in a scale set." + }, + "size": { + "readOnly": true, + "type": "string", + "description": "The Size of the SKU." + }, + "family": { + "readOnly": true, + "type": "string", + "description": "The Family of this particular SKU." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "The Kind of resources that are supported in this SKU." + }, + "capacity": { + "$ref": "#/definitions/ResourceSkuCapacity", + "readOnly": true, + "description": "Not used." + }, + "locations": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available." + }, + "apiVersions": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The api versions that support this SKU." + }, + "costs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuCosts" + }, + "description": "Metadata for retrieving price info." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + }, + "description": "A name value pair to describe the capability." + }, + "restrictions": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuRestrictions" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + }, + "description": "Describes an available DMS SKU." + }, + "ResourceSkuCapacity": { + "properties": { + "minimum": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The minimum capacity." + }, + "maximum": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The maximum capacity." + }, + "default": { + "type": "integer", + "readOnly": true, + "format": "int64", + "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 + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSkuCosts": { + "properties": { + "meterID": { + "type": "string", + "readOnly": true, + "description": "Used for querying price from commerce." + }, + "quantity": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The multiplier is needed to extend the base metered cost." + }, + "extendedUnit": { + "type": "string", + "readOnly": true, + "description": "An invariant to show the extended unit." + } + }, + "description": "Describes metadata for retrieving price info." + }, + "ResourceSkuCapabilities": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "An invariant to describe the feature." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "An invariant if the feature is measured by quantity." + } + }, + "description": "Describes The SKU capabilites object." + }, + "ResourceSkuRestrictions": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of restrictions.", + "enum": [ + "location" + ], + "x-ms-enum": { + "name": "ResourceSkuRestrictionsType", + "modelAsString": true + } + }, + "values": { + "type": "array", + "readOnly": true, + "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", + "readOnly": true, + "description": "The reason code for restriction.", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ResourceSkuRestrictionsReasonCode", + "modelAsString": true + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSkusResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSku" + }, + "description": "The list of SKUs available for the subscription." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of DMS SKUs. Call ListNext() with this to fetch the next page of DMS SKUs." + } + }, + "required": [ + "value" + ], + "description": "The DMS List SKUs operation response." + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Services.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Services.json new file mode 100644 index 000000000000..a6e0b5d4ccc6 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Services.json @@ -0,0 +1,283 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "AvailableServiceSku": { + "type": "object", + "description": "Describes the available service SKU.", + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type, including the provider namespace" + }, + "sku": { + "type": "object", + "description": "SKU name, tier, etc.", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU" + }, + "family": { + "type": "string", + "description": "SKU family" + }, + "size": { + "type": "string", + "description": "SKU size" + }, + "tier": { + "type": "string", + "description": "The tier of the SKU, such as \"Free\", \"Basic\", \"Standard\", or \"Premium\"" + } + } + }, + "capacity": { + "type": "object", + "description": "A description of the scaling capacities of the SKU", + "properties": { + "minimum": { + "type": "integer", + "description": "The minimum capacity, usually 0 or 1." + }, + "maximum": { + "type": "integer", + "description": "The maximum capacity" + }, + "default": { + "type": "integer", + "description": "The default capacity" + }, + "scaleType": { + "type": "string", + "description": "The scalability approach", + "enum": [ + "none", + "manual", + "automatic" + ], + "x-ms-enum": { + "name": "ServiceScalability", + "modelAsString": true + } + } + } + } + } + }, + "DataMigrationService": { + "type": "object", + "description": "A Data Migration Service resource", + "properties": { + "etag": { + "type": "string", + "description": "HTTP strong entity tag value. Ignored if submitted" + }, + "kind": { + "type": "string", + "description": "The resource kind. Only 'vm' (the default) is supported." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Custom service properties", + "$ref": "#/definitions/DataMigrationServiceProperties" + }, + "sku": { + "description": "Service SKU", + "$ref": "#/definitions/ServiceSku" + } + }, + "allOf": [ + { + "$ref": "./Common.json#/definitions/TrackedResource" + } + ] + }, + "DataMigrationServiceList": { + "type": "object", + "description": "OData page of service objects", + "properties": { + "value": { + "type": "array", + "description": "List of services", + "items": { + "$ref": "#/definitions/DataMigrationService" + } + }, + "nextLink": { + "type": "string", + "description": "URL to load the next page of services" + } + } + }, + "DataMigrationServiceProperties": { + "type": "object", + "description": "Properties of the Data Migration service instance", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The resource's provisioning state", + "enum": [ + "Accepted", + "Deleting", + "Deploying", + "Stopped", + "Stopping", + "Starting", + "FailedToStart", + "FailedToStop", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "ServiceProvisioningState", + "modelAsString": true + } + }, + "publicKey": { + "type": "string", + "description": "The public key of the service, used to encrypt secrets sent to the service" + }, + "virtualSubnetId": { + "type": "string", + "description": "The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined" + } + }, + "required": [ "virtualSubnetId" ] + }, + "DataMigrationServiceStatusResponse": { + "type": "object", + "description": "Service health status", + "properties": { + "agentVersion": { + "type": "string", + "description": "The DMS instance agent version" + }, + "status": { + "type": "string", + "description": "The machine-readable status, such as 'Initializing', 'Offline', 'Online', 'Deploying', 'Deleting', 'Stopped', 'Stopping', 'Starting', 'FailedToStart', 'FailedToStop' or 'Failed'" + }, + "vmSize": { + "type": "string", + "description": "The services virtual machine size, such as 'Standard_D2_v2'" + }, + "supportedTaskTypes": { + "type": "array", + "description": "The list of supported task types", + "items": { + "type": "string", + "description": "Migration task type" + } + } + } + }, + "ServiceOperation": { + "type": "object", + "description": "Description of an action supported by the Data Migration Service", + "properties": { + "name": { + "type": "string", + "description": "The fully qualified action name, e.g. Microsoft.DataMigration/services/read" + }, + "display": { + "type": "object", + "description": "Localized display text", + "properties": { + "provider": { + "type": "string", + "description": "The localized resource provider name" + }, + "resource": { + "type": "string", + "description": "The localized resource type name" + }, + "operation": { + "type": "string", + "description": "The localized operation name" + }, + "description": { + "type": "string", + "description": "The localized operation description" + } + } + } + } + }, + "ServiceOperationList": { + "type": "object", + "description": "OData page of action (operation) objects", + "properties": { + "value": { + "type": "array", + "description": "List of actions", + "items": { + "$ref": "#/definitions/ServiceOperation" + } + }, + "nextLink": { + "type": "string", + "description": "URL to load the next page of actions" + } + } + }, + "ServiceSku": { + "type": "object", + "description": "An Azure SKU instance", + "properties": { + "name": { + "type": "string", + "description": "The unique name of the SKU, such as 'P3'" + }, + "tier": { + "type": "string", + "description": "The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'" + }, + "family": { + "type": "string", + "description": "The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines" + }, + "size": { + "type": "string", + "description": "The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines" + }, + "capacity": { + "type": "integer", + "description": "The capacity of the SKU, if it supports scaling" + } + } + }, + "ServiceSkuList": { + "type": "object", + "description": "OData page of available SKUs", + "properties": { + "value": { + "type": "array", + "description": "List of service SKUs", + "items": { + "$ref": "#/definitions/AvailableServiceSku" + } + }, + "nextLink": { + "type": "string", + "description": "URL to load the next page of service SKUs" + } + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Tasks.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Tasks.json new file mode 100644 index 000000000000..e340ee4bf773 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Tasks.json @@ -0,0 +1,265 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ProjectTaskProperties": { + "type": "object", + "description": "Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.", + "x-ms-discriminator-value": "Unknown", + "properties": { + "taskType": { + "description": "Task type.", + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ODataError" + }, + "description": "Array of errors. This is ignored if submitted.", + "readOnly": true + }, + "state": { + "type": "string", + "description": "The state of the task. This is ignored if submitted.", + "enum": [ + "Unknown", + "Queued", + "Running", + "Canceled", + "Succeeded", + "Failed", + "FailedInputValidation", + "Faulted" + ], + "x-ms-enum": { + "name": "TaskState", + "modelAsString": true + }, + "readOnly": true + } + }, + "required": [ "taskType" ], + "discriminator": "taskType" + }, + "ProjectTask": { + "type": "object", + "description": "A task resource", + "properties": { + "etag": { + "type": "string", + "description": "HTTP strong entity tag value. This is ignored if submitted." + }, + "properties": { + "description": "Custom task properties", + "$ref": "#/definitions/ProjectTaskProperties" + } + }, + "allOf": [ + { + "$ref": "./Common.json#/definitions/Resource" + } + ] + }, + "TaskList": { + "type": "object", + "description": "OData page of tasks", + "properties": { + "value": { + "type": "array", + "description": "List of tasks", + "items": { + "$ref": "#/definitions/ProjectTask" + } + }, + "nextLink": { + "type": "string", + "description": "URL to load the next page of tasks" + } + } + }, + "ConnectToSourceSqlServerTaskProperties": { + "x-ms-discriminator-value": "ConnectToSource.SqlServer", + "type": "object", + "description": "Properties for the task that validates connection to SQL Server and also validates source server requirements", + "properties": { + "input": { + "description": "Task input", + "$ref": "./ConnectToSourceSqlServerTask.json#/definitions/ConnectToSourceSqlServerTaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./ConnectToSourceSqlServerTask.json#/definitions/ConnectToSourceSqlServerTaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "ConnectToTargetSqlMITaskProperties": { + "x-ms-discriminator-value": "ConnectToTarget.AzureSqlDbMI", + "type": "object", + "description": "Properties for the task that validates connection to Azure SQL Database Managed Instance", + "properties": { + "input": { + "description": "Task input", + "$ref": "./ConnectToTargetSqlMITask.json#/definitions/ConnectToTargetSqlMITaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./ConnectToTargetSqlMITask.json#/definitions/ConnectToTargetSqlMITaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "ConnectToTargetSqlDbTaskProperties": { + "x-ms-discriminator-value": "ConnectToTarget.SqlDb", + "type": "object", + "description": "Properties for the task that validates connection to SQL DB and target server requirements", + "properties": { + "input": { + "description": "Task input", + "$ref": "./ConnectToTargetSqlDbTask.json#/definitions/ConnectToTargetSqlDbTaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./ConnectToTargetSqlDbTask.json#/definitions/ConnectToTargetSqlDbTaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "GetUserTablesSqlTaskProperties": { + "x-ms-discriminator-value": "GetUserTables.Sql", + "type": "object", + "description": "Properties for the task that collects user tables for the given list of databases", + "properties": { + "input": { + "description": "Task input", + "$ref": "./GetUserTablesSqlTask.json#/definitions/GetUserTablesSqlTaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./GetUserTablesSqlTask.json#/definitions/GetUserTablesSqlTaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "MigrateSqlServerSqlMITaskProperties": { + "x-ms-discriminator-value": "Migrate.SqlServer.AzureSqlDbMI", + "type": "object", + "description": "Properties for task that migrates SQL Server databases to Azure SQL Database Managed Instance", + "properties": { + "input": { + "description": "Task input", + "$ref": "./MigrateSqlServerSqlMITask.json#/definitions/MigrateSqlServerSqlMITaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./MigrateSqlServerSqlMITask.json#/definitions/MigrateSqlServerSqlMITaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "MigrateSqlServerSqlDbTaskProperties": { + "x-ms-discriminator-value": "Migrate.SqlServer.SqlDb", + "type": "object", + "description": "Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database", + "properties": { + "input": { + "description": "Task input", + "$ref": "./MigrateSqlServerSqlDbTask.json#/definitions/MigrateSqlServerSqlDbTaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./MigrateSqlServerSqlDbTask.json#/definitions/MigrateSqlServerSqlDbTaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + }, + "ValidateMigrationInputSqlServerSqlMITaskProperties": { + "x-ms-discriminator-value": "ValidateMigrationInput.SqlServer.AzureSqlDbMI", + "type": "object", + "description": "Properties for task that validates migration input for SQL to Azure SQL Database Managed Instance", + "properties": { + "input": { + "description": "Task input", + "$ref": "./ValidateMigrationInputSqlServerSqlMITask.json#/definitions/ValidateMigrationInputSqlServerSqlMITaskInput" + }, + "output": { + "description": "Task output. This is ignored if submitted.", + "type": "array", + "items": { + "$ref": "./ValidateMigrationInputSqlServerSqlMITask.json#/definitions/ValidateMigrationInputSqlServerSqlMITaskOutput" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProjectTaskProperties" + } + ] + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/TasksCommon.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/TasksCommon.json new file mode 100644 index 000000000000..e0bd2898a9a2 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/TasksCommon.json @@ -0,0 +1,557 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "TaskOutput": { + "type": "object", + "description": "Base class for all DMS task outputs", + "properties": { + "id": { + "type": "string", + "description": "Result identifier", + "readOnly": true + } + } + }, + "Database": { + "type": "object", + "description": "Information about a single database", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the database" + }, + "name": { + "type": "string", + "description": "Name of the database" + }, + "compatibilityLevel": { + "$ref": "#/definitions/DatabaseCompatLevel", + "description": "SQL Server compatibility level of database" + }, + "collation": { + "type": "string", + "description": "Collation name of the database" + }, + "serverName": { + "type": "string", + "description": "Name of the server" + }, + "fqdn": { + "type": "string", + "description": "Fully qualified name" + }, + "installId": { + "type": "string", + "description": "Install id of the database" + }, + "serverVersion": { + "type": "string", + "description": "Version of the server" + }, + "serverEdition": { + "type": "string", + "description": "Edition of the server" + }, + "serverLevel": { + "type": "string", + "description": "Product level of the server (RTM, SP, CTP)." + }, + "serverDefaultDataPath": { + "type": "string", + "description": "Default path of the data files" + }, + "serverDefaultLogPath": { + "type": "string", + "description": "Default path of the log files" + }, + "serverDefaultBackupPath": { + "type": "string", + "description": "Default path of the backup folder" + }, + "serverCoreCount": { + "type": "integer", + "description": "Number of cores on the server" + }, + "serverVisibleOnlineCoreCount": { + "type": "integer", + "description": "Number of cores on the server that have VISIBLE ONLINE status" + }, + "databaseState": { + "$ref": "#/definitions/DatabaseState", + "description": "State of the database" + }, + "serverId": { + "type": "string", + "description": "The unique Server Id" + } + } + }, + "DatabaseCompatLevel": { + "type": "string", + "description": "An enumeration of SQL Server database compatibility levels", + "enum": [ + "CompatLevel80", + "CompatLevel90", + "CompatLevel100", + "CompatLevel110", + "CompatLevel120", + "CompatLevel130", + "CompatLevel140" + ], + "x-ms-enum": { + "name": "DatabaseCompatLevel", + "modelAsString": true + } + }, + "DatabaseState": { + "type": "string", + "description": "An enumeration of SQL Server Database states", + "enum": [ + "Online", + "Restoring", + "Recovering", + "RecoveryPending", + "Suspect", + "Emergency", + "Offline", + "Copying", + "OfflineSecondary" + ], + "x-ms-enum": { + "name": "DatabaseState", + "modelAsString": true + } + }, + "DatabaseObjectType": { + "type": "string", + "description": "An enumeration of type of objects", + "enum": [ + "StoredProcedures", + "Table", + "User", + "View", + "Function" + ], + "x-ms-enum": { + "name": "ObjectType", + "modelAsString": true + } + }, + "DatabaseObjectName": { + "type": "object", + "description": "A representation of the name of an object in a database", + "properties": { + "databaseName": { + "type": "string", + "description": "The unescaped name of the database containing the object", + "readOnly": true + }, + "objectName": { + "type": "string", + "description": "The unescaped name of the object", + "readOnly": true + }, + "schemaName": { + "type": "string", + "description": "The unescaped name of the schema containing the object", + "readOnly": true + }, + "objectType": { + "$ref": "#/definitions/DatabaseObjectType", + "description": "Type of the object in the database" + } + } + }, + "DataItemMigrationSummaryResult": { + "type": "object", + "description": "Basic summary of a data item migration", + "properties": { + "name": { + "type": "string", + "description": "Name of the item", + "readOnly": true + }, + "startedOn": { + "type": "string", + "format": "date-time", + "description": "Migration start time", + "readOnly": true + }, + "endedOn": { + "type": "string", + "format": "date-time", + "description": "Migration end time", + "readOnly": true + }, + "state": { + "$ref": "#/definitions/MigrationState", + "description": "Current state of migration", + "readOnly": true + }, + "statusMessage": { + "type": "string", + "description": "Status message", + "readOnly": true + }, + "itemsCount": { + "type": "integer", + "format": "int64", + "description": "Number of items", + "readOnly": true + }, + "itemsCompletedCount": { + "type": "integer", + "format": "int64", + "description": "Number of successfully completed items", + "readOnly": true + }, + "errorPrefix": { + "type": "string", + "description": "Wildcard string prefix to use for querying all errors of the item", + "readOnly": true + }, + "resultPrefix": { + "type": "string", + "description": "Wildcard string prefix to use for querying all sub-tem results of the item", + "readOnly": true + } + } + }, + "DataMigrationProjectMetadata": { + "type": "object", + "description": "Common metadata for migration projects", + "properties": { + "sourceServerName": { + "type": "string", + "description": "Source server name", + "readOnly": true + }, + "sourceServerPort": { + "type": "string", + "description": "Source server port number", + "readOnly": true + }, + "sourceUsername": { + "type": "string", + "description": "Source username", + "readOnly": true + }, + "targetServerName": { + "type": "string", + "description": "Target server name", + "readOnly": true + }, + "targetUsername": { + "type": "string", + "description": "Target username", + "readOnly": true + }, + "targetDbName": { + "type": "string", + "description": "Target database name", + "readOnly": true + }, + "targetUsingWinAuth": { + "type": "boolean", + "description": "Whether target connection is Windows authentication", + "readOnly": true + }, + "selectedMigrationTables": { + "type": "array", + "description": "List of tables selected for migration", + "readOnly": true, + "items": { + "$ref": "#/definitions/MigrationTableMetadata" + } + } + } + }, + "MigrationState": { + "type": "string", + "description": "Current state of migration", + "enum": [ + "None", + "InProgress", + "Failed", + "Warning", + "Completed", + "Skipped", + "Stopped" + ], + "x-ms-enum": { + "name": "MigrationState", + "modelAsString": true + } + }, + "MigrationStatus": { + "type": "string", + "description": "Current status of migration", + "enum": [ + "Default", + "Connecting", + "SourceAndTargetSelected", + "SelectLogins", + "Configured", + "Running", + "Error", + "Stopped", + "Completed", + "CompletedWithWarnings" + ], + "x-ms-enum": { + "name": "MigrationStatus", + "modelAsString": true + } + }, + "SqlMigrationTaskInput": { + "type": "object", + "description": "Base class for migration task input", + "properties": { + "sourceConnectionInfo": { + "$ref": "./Common.json#/definitions/SqlConnectionInfo", + "description": "Information for connecting to source" + }, + "targetConnectionInfo": { + "$ref": "./Common.json#/definitions/SqlConnectionInfo", + "description": "Information for connecting to target" + } + }, + "required": [ + "sourceConnectionInfo", + "targetConnectionInfo" + ] + }, + "MigrationTableMetadata": { + "type": "object", + "description": "Metadata for tables selected in migration project", + "properties": { + "sourceTableName": { + "type": "string", + "description": "Source table name", + "readOnly": true + }, + "targetTableName": { + "type": "string", + "description": "Target table name", + "readOnly": true + } + } + }, + "DataMigrationError": { + "type": "object", + "description": "Migration Task errors", + "properties": { + "message": { + "type": "string", + "description": "Error description", + "readOnly": true + }, + "type": { + "$ref": "#/definitions/ErrorType" + } + } + }, + "ErrorType": { + "type": "string", + "description": "Error type", + "enum": [ + "Default", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "ErrorType", + "modelAsString": true + } + }, + "MigrateSqlServerSqlMIDatabaseInput": { + "type": "object", + "description": "Database specific information for SQL to Azure SQL DB Managed Instance migration task inputs", + "properties": { + "name": { + "type": "string", + "description": "Name of the database" + }, + "restoreDatabaseName": { + "type": "string", + "description": "Name of the database at destination" + }, + "backupFileShare": { + "$ref": "#/definitions/FileShare", + "description": "Backup file share information for backing up this database." + } + }, + "required": [ + "name", + "restoreDatabaseName" + ] + }, + "MigrateSqlServerSqlServerDatabaseInput": { + "type": "object", + "description": "Database specific information for SQL to SQL migration task inputs", + "properties": { + "name": { + "type": "string", + "description": "Name of the database" + }, + "restoreDatabaseName": { + "type": "string", + "description": "Name of the database at destination" + }, + "backupFileShare": { + "$ref": "#/definitions/FileShare", + "description": "Backup file share information for this database." + }, + "databaseFiles": { + "type": "array", + "description": "The list of database files", + "items": { + "$ref": "#/definitions/DatabaseFileInput" + } + } + } + }, + "DatabaseFileInput": { + "type": "object", + "description": "Database file specific information for input", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for database file" + }, + "logicalName": { + "type": "string", + "description": "Logical name of the file" + }, + "physicalFullName": { + "type": "string", + "description": "Operating-system full path of the file" + }, + "restoreFullName": { + "type": "string", + "description": "Suggested full path of the file for restoring" + }, + "fileType": { + "$ref": "#/definitions/DatabaseFileType", + "description": "Database file type" + } + } + }, + "DatabaseFileInfo": { + "type": "object", + "description": "Database file specific information", + "properties": { + "databaseName": { + "type": "string", + "description": "Name of the database" + }, + "id": { + "type": "string", + "description": "Unique identifier for database file" + }, + "logicalName": { + "type": "string", + "description": "Logical name of the file" + }, + "physicalFullName": { + "type": "string", + "description": "Operating-system full path of the file" + }, + "restoreFullName": { + "type": "string", + "description": "Suggested full path of the file for restoring" + }, + "fileType": { + "$ref": "#/definitions/DatabaseFileType", + "description": "Database file type" + }, + "sizeMB": { + "type": "number", + "format": "double", + "description": "Size of the file in megabytes" + } + } + }, + "DatabaseFileType": { + "type": "string", + "description": "An enumeration of SQL Server database file types", + "enum": [ + "Rows", + "Log", + "Filestream", + "NotSupported", + "Fulltext" + ], + "x-ms-enum": { + "name": "DatabaseFileType", + "modelAsString": true + } + }, + "DatabaseMigrationStage": { + "type": "string", + "description": "Current stage of migration", + "enum": [ + "None", + "Initialize", + "Backup", + "FileCopy", + "Restore", + "Completed" + ], + "x-ms-enum": { + "name": "DatabaseMigrationStage", + "modelAsString": true + } + }, + "BlobShare": { + "type": "object", + "description": "Blob container storage information.", + "properties": { + "sasUri": { + "type": "string", + "description": "SAS URI of Azure Storage Account Container." + } + }, + "required": [ + "sasUri" + ] + }, + "FileShare": { + "type": "object", + "description": "File share information with Path, Username, and Password.", + "properties": { + "userName": { + "type": "string", + "description": "User name credential to connect to the share location" + }, + "password": { + "type": "string", + "description": "Password credential used to connect to the share location." + }, + "path": { + "type": "string", + "description": "The folder path for this share." + } + }, + "required": [ + "path" + ] + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json new file mode 100644 index 000000000000..e5bdb8e2d857 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json @@ -0,0 +1,99 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Data Migration Service Resource Provider", + "version": "2018-03-15-preview" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "ValidateMigrationInputSqlServerSqlMITaskInput": { + "type": "object", + "description": "Input for task that validates migration input for SQL to Azure SQL Managed Instance", + "properties": { + "targetConnectionInfo": { + "$ref": "./Common.json#/definitions/SqlConnectionInfo", + "description": "Information for connecting to target" + }, + "selectedDatabases": { + "type": "array", + "description": "Databases to migrate", + "items": { + "$ref": "./TasksCommon.json#/definitions/MigrateSqlServerSqlMIDatabaseInput" + } + }, + "backupFileShare": { + "$ref": "./TasksCommon.json#/definitions/FileShare", + "description": "Backup file share information for all selected databases." + }, + "backupBlobShare": { + "$ref": "./TasksCommon.json#/definitions/BlobShare", + "description": "SAS URI of Azure Storage Account Container to be used for storing backup files." + } + }, + "required": [ + "targetConnectionInfo", + "selectedDatabases", + "backupBlobShare" + ] + }, + "ValidateMigrationInputSqlServerSqlMITaskOutput": { + "type": "object", + "description": "Output for task that validates migration input for SQL to Azure SQL Managed Instance migrations", + "allOf": [ + { + "$ref": "./TasksCommon.json#/definitions/TaskOutput" + } + ], + "properties": { + "name": { + "type": "string", + "description": "Name of database", + "readOnly": true + }, + "restoreDatabaseNameErrors": { + "description": "Errors associated with the RestoreDatabaseName", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + }, + "backupFolderErrors": { + "description": "Errors associated with the BackupFolder path", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + }, + "backupShareCredentialsErrors": { + "description": "Errors associated with backup share user name and password credentials", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + }, + "backupStorageAccountErrors" : { + "description": "Errors associated with the storage account provided.", + "type": "array", + "items": { + "$ref": "./Common.json#/definitions/ReportableException" + }, + "readOnly": true + } + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Operations_List.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Operations_List.json new file mode 100644 index 000000000000..328675e6afd6 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Operations_List.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DataMigration/services/read", + "display": { + "provider": "Data Migration Service", + "resource": "Data Migration Service", + "operation": "Read", + "description": "Read information about services." + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_CreateOrUpdate.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_CreateOrUpdate.json new file mode 100644 index 000000000000..c35042afffec --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_CreateOrUpdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "api-version": "2018-03-15-preview", + "parameters": { + "location": "southcentralus", + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB", + "creationTime": "2017-11-03T02:14:54.2458282-07:00", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject", + "location": "southcentralus", + "name": "DmsSdkProject", + "type": "Microsoft.DataMigration/services/projects" + } + }, + "201": { + "body": { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB", + "creationTime": "2017-11-03T02:14:54.2458282-07:00", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject", + "location": "southcentralus", + "name": "DmsSdkProject", + "type": "Microsoft.DataMigration/services/projects" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Delete.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Delete.json new file mode 100644 index 000000000000..f697952f4c9b --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "204": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Get.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Get.json new file mode 100644 index 000000000000..644bb75d1146 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB", + "creationTime": "2017-11-03T02:35:11.6561001-07:00", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject", + "location": "southcentralus", + "name": "DmsSdkProject", + "type": "Microsoft.DataMigration/services/projects" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_List.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_List.json new file mode 100644 index 000000000000..5ab8cafc15be --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses":{ + "200": { + "body": { + "value": [ + { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB", + "creationTime": "2017-11-14T01:29:56.3049263+00:00", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/project1", + "location": "southcentralus", + "name": "project1", + "type": "Microsoft.DataMigration/services/projects" + }, + { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB", + "creationTime": "2017-11-14T01:30:05.6185148+00:00", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/project2", + "location": "southcentralus", + "name": "project2", + "type": "Microsoft.DataMigration/services/projects" + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Update.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Update.json new file mode 100644 index 000000000000..9dea0cc3126a --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Projects_Update.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "api-version": "2018-03-15-preview", + "parameters": { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sourcePlatform": "SQL", + "targetPlatform": "SQLDB", + "creationTime": "2017-11-03T02:14:54.2458282-07:00", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject", + "location": "southcentralus", + "name": "DmsSdkProject", + "type": "Microsoft.DataMigration/services/projects" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/ResourceSkus_ListSkus.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/ResourceSkus_ListSkus.json new file mode 100644 index 000000000000..b2cf64adf928 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/ResourceSkus_ListSkus.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "services", + "name": "PP1", + "locations": [ "East Asia", "Southeast Asia", "Australia East", "Australia Southeast", "Brazil South", "Canada Central", "Canada East", "North Europe", "West Europe", "Central India", "South India", "West India", "Japan East", "Japan West", "Korea South", "Korea Central", "UK South", "UK South 2", "UK North", "UK West", "East US 2 EUAP", "Central US", "East US", "East US 2", "North Central US", "South Central US", "West Central US", "West US", "West US 2" ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckChildrenNameAvailability.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckChildrenNameAvailability.json new file mode 100644 index 000000000000..e2b08c3cb47e --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckChildrenNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview", + "parameters": { + "requestedName": { + "name": "Task1", + "type": "tasks" + } + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckNameAvailability.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckNameAvailability.json new file mode 100644 index 000000000000..72b7791d3900 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "api-version": "2018-03-15-preview", + "location": "eastus", + "parameters": { + "requestedName": { + "name": "DmsSdkService", + "type": "services" + } + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckStatus.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckStatus.json new file mode 100644 index 000000000000..9c4c2aeae55c --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CheckStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "agentVersion": "3.3.3871.6", + "status": "Online", + "vmSize": "Standard_A1_v2", + "supportedTaskTypes": [ + "diagnostic.count", + "diagnostic.echo", + "diagnostic.error", + "diagnostic.fastCount", + "DataMigration.CompleteAzureSqlDbMIMigration", + "ConnectToSource.SqlServer", + "GetUserTables.Sql", + "ConnectToTarget.AzureSqlDbMI", + "ConnectToTarget.SqlDb", + "Migrate.SqlServer.SqlDb", + "Migrate.SqlServer.AzureSqlDbMI", + "ValidateMigrationInput.SqlServer.AzureSqlDbMI" + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CreateOrUpdate.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CreateOrUpdate.json new file mode 100644 index 000000000000..1ece62b5f83a --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_CreateOrUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview", + "parameters": { + "properties": { + "virtualSubnetId": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default" + }, + "sku": { + "name": "Basic_1vCore" + }, + "location": "southcentralus" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Accepted", + "virtualSubnetId": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default" + }, + "etag": "9QuK/U0GvTJpjIrlOzITXVy68+bmmQ3bFkHudLxmkUw=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService", + "location": "southcentralus", + "name": "DmsSdkService", + "sku": { + "name": "Basic_1vCore", + "size": "1 vCore", + "tier": "Basic" + }, + "type": "Microsoft.DataMigration/services" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "Accepted", + "virtualSubnetId": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default" + }, + "etag": "9QuK/U0GvTJpjIrlOzITXVy68+bmmQ3bFkHudLxmkUw=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService", + "location": "southcentralus", + "name": "DmsSdkService", + "sku": { + "name": "Basic_1vCore", + "size": "1 vCore", + "tier": "Basic" + }, + "type": "Microsoft.DataMigration/services" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Delete.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Delete.json new file mode 100644 index 000000000000..aabc4dfe5048 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses":{ + "200":{}, + "202": { + "body": "" + }, + "204":{} + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Get.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Get.json new file mode 100644 index 000000000000..ffce94661deb --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "publicKey": "0;AQAB;kkQk9TqKG6+ZP2DDr0yjdnlHsZjJFBbL++2eSJvTDzIJFE98nGSA3RNX4EC65oSmsaNhKZi7y6v+cuU6/7q08uom5IfTK0CxmjRnKdoOHnZnP9TShaFLiZPv7H/FXoUIzHKuaOxg+/35AlhDXLVFjKmwfScLC+g6sEWDhlfWzcN7c34yVOGF+BQyZHIeqBcf9HDcwgFfjvAlEh0x4sTeLUNdpjLEv74ce3A/kJMBdFUoxVXvHcMjVVGXC4gS1VLb7Ykoihx+/c5qbhKMNff21v5lwxzNLfIMGzL+T8vKab+3Cpmusk2JaBJ+6glIIuhrpaX5X9fgmvenzzluUWMX9w==", + "virtualSubnetId": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default" + }, + "etag": "VVFgsiFIruaTduI4hoNOUXLMXr5Y79qytW2cotz4viI=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService", + "location": "southcentralus", + "name": "DmsSdkService", + "sku": { + "name": "Basic_1vCore", + "size": "1 vCore", + "tier": "Basic" + }, + "type": "Microsoft.DataMigration/services" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_List.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_List.json new file mode 100644 index 000000000000..099802e99f81 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "api-version": "2018-03-15-preview" + }, + "responses":{ + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg1/providers/Microsoft.DataMigration/services/DmsSdkService1", + "name": "DmsSdkService1", + "type": "Microsoft.DataMigration/services", + "sku": { + "name": "GeneralPurpose_4vCores", + "tier": "General Purpose", + "size": "4 vCores" + }, + "location": "southcentralus" + }, + { + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg2/providers/Microsoft.DataMigration/services/DmsSdkService2", + "name": "DmsSdkService2", + "type": "Microsoft.DataMigration/services", + "sku": { + "name": "Basic_2vCores", + "tier": "Basic", + "size": "2 vCores" + }, + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_ListByResourceGroup.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_ListByResourceGroup.json new file mode 100644 index 000000000000..d2036568435f --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_ListByResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "api-version": "2018-03-15-preview" + }, + "responses":{ + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService1", + "name": "DmsSdkService1", + "type": "Microsoft.DataMigration/services", + "sku": { + "name": "GeneralPurpose_4vCores", + "tier": "General Purpose", + "size": "4 vCores" + }, + "location": "southcentralus" + }, + { + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService2", + "name": "DmsSdkService2", + "type": "Microsoft.DataMigration/services", + "sku": { + "name": "Basic_2vCores", + "tier": "Basic", + "size": "2 vCores" + }, + "location": "southcentralus" + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_ListSkus.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_ListSkus.json new file mode 100644 index 000000000000..defebaea1322 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_ListSkus.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.DataMigration/services", + "sku": { + "name": "Basic_1vCore", + "size": "1 vCore", + "tier": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Start.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Start.json new file mode 100644 index 000000000000..b26857596ae4 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Start.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses": { + "202": { + "body": "" + }, + "200": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Stop.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Stop.json new file mode 100644 index 000000000000..b26857596ae4 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Stop.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview" + }, + "responses": { + "202": { + "body": "" + }, + "200": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Update.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Update.json new file mode 100644 index 000000000000..4cd37692ee4d --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Services_Update.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "api-version": "2018-03-15-preview", + "parameters": { + "properties": { + "virtualSubnetId": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default" + } + } + }, + "responses":{ + "200": { + "body": { + "properties": { + "provisioningState": "Accepted", + "virtualSubnetId": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default" + }, + "etag": "9QuK/U0GvTJpjIrlOzITXVy68+bmmQ3bFkHudLxmkUw=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService", + "location": "southcentralus", + "name": "DmsSdkService", + "sku": { + "name": "Basic_1vCore", + "size": "1 vCore", + "tier": "Basic" + }, + "type": "Microsoft.DataMigration/services" + } + }, + "202":{} + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Cancel.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Cancel.json new file mode 100644 index 000000000000..60afffd628d0 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Cancel.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "taskName": "DmsSdkTask", + "api-version": "2018-03-15-preview" + }, + "responses":{ + "200": { + "body": { + "properties": { + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser" + } + }, + "taskType": "ConnectToTarget.SqlDb", + "state": "Queued" + }, + "etag": "0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask", + "name": "DmsSdkTask", + "type": "Microsoft.DataMigration/services/projects/tasks" + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_CreateOrUpdate.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_CreateOrUpdate.json new file mode 100644 index 000000000000..8a9712c4e005 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_CreateOrUpdate.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "projectName": "DmsSdkProject", + "serviceName": "DmsSdkService", + "taskName": "DmsSdkTask", + "api-version": "2018-03-15-preview", + "parameters": { + "properties": { + "taskType": "ConnectToTarget.SqlDb", + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser", + "password": "testpassword" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser" + } + }, + "taskType": "ConnectToTarget.SqlDb", + "state": "Queued" + }, + "etag": "0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask", + "name": "DmsSdkTask", + "type": "Microsoft.DataMigration/services/projects/tasks" + } + }, + "201": { + "body": { + "properties": { + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser" + } + }, + "taskType": "ConnectToTarget.SqlDb", + "state": "Queued" + }, + "etag": "0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask", + "name": "DmsSdkTask", + "type": "Microsoft.DataMigration/services/projects/tasks" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Delete.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Delete.json new file mode 100644 index 000000000000..39b2cd7d5d54 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "taskName": "DmsSdkTask", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "204": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Get.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Get.json new file mode 100644 index 000000000000..b306aa753ff0 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "taskName": "DmsSdkTask", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser" + } + }, + "taskType": "ConnectToTarget.SqlDb", + "state": "Queued" + }, + "etag": "0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask", + "name": "DmsSdkTask", + "type": "Microsoft.DataMigration/services/projects/tasks" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_List.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_List.json new file mode 100644 index 000000000000..7d8c18fee003 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "serviceName": "DmsSdkService", + "projectName": "DmsSdkProject", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser" + } + }, + "taskType": "ConnectToTarget.SqlDb", + "state": "Queued" + }, + "etag": "0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask", + "name": "DmsSdkTask", + "type": "Microsoft.DataMigration/services/projects/tasks" + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Update.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Update.json new file mode 100644 index 000000000000..57792f46ad2c --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Tasks_Update.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "fc04246f-04c5-437e-ac5e-206a19e7193f", + "groupName": "DmsSdkRg", + "projectName": "DmsSdkProject", + "serviceName": "DmsSdkService", + "taskName": "DmsSdkTask", + "api-version": "2018-03-15-preview", + "parameters": { + "properties": { + "taskType": "ConnectToTarget.SqlDb", + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser", + "password": "testpassword" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "input": { + "targetConnectionInfo": { + "type": "SqlConnectionInfo", + "dataSource": "ssma-test-server.database.windows.net", + "authentication": "SqlAuthentication", + "encryptConnection": true, + "trustServerCertificate": true, + "userName": "testuser" + } + }, + "taskType": "ConnectToTarget.SqlDb", + "state": "Queued" + }, + "etag": "0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=", + "id": "/subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask", + "name": "DmsSdkTask", + "type": "Microsoft.DataMigration/services/projects/tasks" + } + } + } +} \ No newline at end of file diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Usages_List.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Usages_List.json new file mode 100644 index 000000000000..8fbfeaf91215 --- /dev/null +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-03-15-preview/examples/Usages_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "90fb80a6-0f71-4761-8f03-921e7396f3c0", + "location": "westus", + "api-version": "2018-03-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 1.0, + "id": "/subscriptions/90fb80a6-0f71-4761-8f03-921e7396f3c0/providers/Microsoft.DataMigration/locations/westus/usages/Services", + "limit": 2.0, + "name": { + "localizedValue": "DMS service instances per region", + "value": "Services" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/datamigration/resource-manager/readme.md b/specification/datamigration/resource-manager/readme.md index e28ae0f50614..b7ad870b05e4 100644 --- a/specification/datamigration/resource-manager/readme.md +++ b/specification/datamigration/resource-manager/readme.md @@ -2,7 +2,7 @@ > see https://aka.ms/autorest -This is the AutoRest configuration file for Data Migration Service. +This is the AutoRest configuration file for Database Migration Service. The Data Migration RP comprises of APIs that enable a customer to manage the service instances that help migrate databases from a source to target. @@ -28,7 +28,7 @@ These are the global settings for the Data Migration Service API. title: DataMigrationManagementClient description: Data Migration Client openapi-type: arm -tag: package-2017-11-15-preview +tag: package-2018-03-15-preview ``` ### Tag: package-2017-11-15-preview @@ -49,6 +49,29 @@ input-file: - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/TasksCommon.json - Microsoft.DataMigration/preview/2017-11-15-preview/definitions/MigrationValidation.json ``` + +### Tag: package-2018-03-15-preview + +These settings apply only when `--tag=package-2018-03-15-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-03-15-preview' +input-file: +- Microsoft.DataMigration/preview/2018-03-15-preview/datamigration.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Common.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToSourceSqlServerTask.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlDbTask.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlMITask.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/GetUserTablesSqlTask.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlDbTask.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlMITask.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Projects.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Services.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Tasks.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/TasksCommon.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrationValidation.json +- Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json +``` + --- # Code Generation @@ -61,6 +84,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: + - repo: azure-sdk-for-python - repo: azure-sdk-for-go ``` @@ -81,14 +105,29 @@ csharp: ## 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 - output-folder: $(output-folder)Generated/Python license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 namespace: azure.mgmt.datamigration + package-name: azure-mgmt-datamigration + package-version: 0.1.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-datamigration/azure/mgmt/datamigration +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-datamigration ``` ## Go diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2017-11-15/iotdps.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2017-11-15/iotdps.json index 839431d02198..72d074c3d45e 100644 --- a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2017-11-15/iotdps.json +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2017-11-15/iotdps.json @@ -592,7 +592,7 @@ "tags": [ "GET" ], - "operationId": "DpsCertificates_List", + "operationId": "DpsCertificate_List", "description": "Get all the certificates tied to the provisioning service.", "x-ms-examples": { "DPSGetCertificates": { "$ref": "./examples/DPSGetCertificates.json" } @@ -1437,7 +1437,7 @@ "$ref": "#/definitions/IotDpsPropertiesDescription" }, "sku": { - "description": "Sku info for a provisioning Service.", + "description": "SKU info for a provisioning service.", "$ref": "#/definitions/IotDpsSkuInfo" } }, @@ -1530,11 +1530,11 @@ "description": "Description of the IoT hub.", "properties": { "applyAllocationPolicy": { - "description": "flag for applying allocationPolicy or not for a given iot hub.", + "description": "Flag for applying allocationPolicy or not for a given IoT hub.", "type": "boolean" }, "allocationWeight": { - "description": "weight to apply for a given iot h.", + "description": "Weight to apply for a given IoT hub.", "format": "int32", "type": "integer" }, @@ -1545,7 +1545,7 @@ }, "connectionString": { "type": "string", - "description": "Connection string og the IoT hub." + "description": "Connection string of the IoT hub." }, "location": { "type": "string", @@ -1744,10 +1744,10 @@ }, "IotDpsSkuDefinition": { "type": "object", - "description": "Available Sku's of tier and units.", + "description": "Available SKU's of tier and units.", "properties": { "name": { - "description": "Sku name.", + "description": "SKU name.", "enum": [ "S1" ], @@ -1914,4 +1914,4 @@ "type": "string" } } - } \ No newline at end of file + } diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCertificateCreateOrUpdate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCertificateCreateOrUpdate.json new file mode 100644 index 000000000000..2e26a1814bef --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCertificateCreateOrUpdate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version":"2018-01-22", + "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=" + } + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCheckNameAvailability.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCheckNameAvailability.json new file mode 100644 index 000000000000..a9ec8da033af --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "arguments": { + "name":"test213123" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "name is valid" + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCreate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCreate.json new file mode 100644 index 000000000000..263c08111fca --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotDpsDescription": { + "location": "East US", + "type": "Microsoft.Devices/ProvisioningServices", + "properties": { + }, + "sku": { + "name": "S1", + "tier": "Standard", + "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 + } + } + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSDelete.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSDelete.json new file mode 100644 index 000000000000..dadbac140ec7 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": {}, + "204": {}, + "202": {}, + "404": {} + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSDeleteCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSDeleteCertificate.json new file mode 100644 index 000000000000..ab0c7491f10f --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version":"2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGenerateVerificationCode.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGenerateVerificationCode.json new file mode 100644 index 000000000000..548e625684bc --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGenerateVerificationCode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGet.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGet.json new file mode 100644 index 000000000000..d9a061d20f60 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetCertificate.json new file mode 100644 index 000000000000..077a495eefe1 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetCertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetCertificates.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetCertificates.json new file mode 100644 index 000000000000..c21073d7a4fa --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetCertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version":"2018-01-22", + "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=" + } + ] + } + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetKey.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetKey.json new file mode 100644 index 000000000000..b0648e8e6668 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version":"2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "testKey" + }, + "responses": { + "200": { + "body": { + "keyName": "testKey", + "primaryKey": "##################################", + "secondaryKey": "################################", + "rights": "RegistrationStatusWrite" + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetOperationResult.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetOperationResult.json new file mode 100644 index 000000000000..70be9828a1aa --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetOperationResult.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationId": "MTY5OTNmZDctODI5Yy00N2E2LTkxNDQtMDU1NGIyYzY1ZjRl", + "asyncinfo": "1508265712453" + }, + "responses": { + "200": { + "body": { + "status":"Succeeded" + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetValidSku.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetValidSku.json new file mode 100644 index 000000000000..148c4b77ede8 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSGetValidSku.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "S1" + } + ] + } + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListByResourceGroup.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListByResourceGroup.json new file mode 100644 index 000000000000..565ad86f3ece --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2018-01-22", + "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 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListBySubscription.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListBySubscription.json new file mode 100644 index 000000000000..a051e7800fc8 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2018-01-22", + "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 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListKeys.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListKeys.json new file mode 100644 index 000000000000..943b80f802c1 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSListKeys.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value":[ + { + "keyName": "key1", + "primaryKey": "#####################################", + "secondaryKey": "###################################", + "rights": "ServiceConfig" + }, + { + "keyName": "key2", + "primaryKey": "#######################################", + "secondaryKey": "####################################=", + "rights": "ServiceConfig" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSOperations.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSOperations.json new file mode 100644 index 000000000000..484c2c9817ef --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSOperations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2018-01-22" + }, + "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" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSPatch.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSPatch.json new file mode 100644 index 000000000000..c8aeaa09965b --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSPatch.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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 + } + } + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSUpdate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSUpdate.json new file mode 100644 index 000000000000..586e2cf39db7 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "name": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/ProvisioningServices", + "properties": { + "iotHubs": [ + { + "name": "test.azure-devices.net", + "connectionString": "#########", + "location": "westus" + }] + }, + "sku": { + "name": "S1", + "tier": "Standard", + "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" + }, + "resourcegroup": "myResourceGroup", + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "subscriptionid": "91d12660-3dec-467a-be2a-213b5544ddc0", + "tags": { + + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSVerifyCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSVerifyCertificate.json new file mode 100644 index 000000000000..1e0fb01a9bb9 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/DPSVerifyCertificate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + } + } +} \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/iotdps.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/iotdps.json new file mode 100644 index 000000000000..f0df376d9178 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2018-01-22/iotdps.json @@ -0,0 +1,1917 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-22", + "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 assosciated 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": "DpsCertificates_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 provisoning 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 provisoning 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 + } + }, + "provisioningState": { + "description": "The ARM provisioning state of the provisioning service.", + "type": "string" + }, + "iotHubs": { + "type": "array", + "description": "List of IoT hubs assosciated 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" + ] + }, + "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 SKU's", + "type": "array", + "items": { + "$ref": "#/definitions/IotDpsSkuDefinition" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotDpsSkuDefinition": { + "type": "object", + "description": "Available Sku's 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 etailed 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" + } + } + } \ No newline at end of file diff --git a/specification/deviceprovisioningservices/resource-manager/readme.md b/specification/deviceprovisioningservices/resource-manager/readme.md index 31141f083874..8d5ee3c77490 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.md @@ -24,7 +24,7 @@ These are the global settings for the API. ``` yaml openapi-type: arm -tag: package-2017-11 +tag: package-2018-01 ``` ### Tag: package-2017-08 @@ -45,6 +45,15 @@ input-file: - Microsoft.Devices/stable/2017-11-15/iotdps.json ``` +### Tag: package-2018-01 + +These settings apply only when `--tag=package-2018-01` is specified on the command line. + +``` yaml $(tag) == 'package-2018-01' +input-file: +- Microsoft.Devices/stable/2018-01-22/iotdps.json +``` + --- # Code Generation @@ -120,6 +129,17 @@ go: batch: - tag: package-2017-11 - tag: package-2017-08 + - tag: package-2018-01 +``` + + +### Tag: package-2018-01 and go + +These settings apply only when `--tag=package-2018-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2017-11' && $(go) +output-folder: $(go-sdk-folder)/services/provisioningservices/mgmt/2018-01-22/iothub ``` ### Tag: package-2017-11 and go diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/dns.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/dns.json new file mode 100644 index 000000000000..8250e8db55a3 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/dns.json @@ -0,0 +1,1626 @@ +{ + "swagger": "2.0", + "info": { + "title": "DnsManagementClient", + "description": "The DNS Management Client.", + "version": "2018-03-01-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": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}": { + "patch": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_Update", + "description": "Updates a record set within a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set.", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecordSet" + }, + "description": "Parameters supplied to the Update operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value to prevent accidentally overwritting concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The record set has been updated.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Patch A recordset": { + "$ref": "./examples/PatchARecordset.json" + }, + "Patch AAAA recordset": { + "$ref": "./examples/PatchAAAARecordset.json" + }, + "Patch CAA recordset": { + "$ref": "./examples/PatchCaaRecordset.json" + }, + "Patch CNAME recordset": { + "$ref": "./examples/PatchCNAMERecordset.json" + }, + "Patch MX recordset": { + "$ref": "./examples/PatchMXRecordset.json" + }, + "Patch NS recordset": { + "$ref": "./examples/PatchNSRecordset.json" + }, + "Patch PTR recordset": { + "$ref": "./examples/PatchPTRRecordset.json" + }, + "Patch SOA recordset": { + "$ref": "./examples/PatchSOARecordset.json" + }, + "Patch SRV recordset": { + "$ref": "./examples/PatchSRVRecordset.json" + }, + "Patch TXT recordset": { + "$ref": "./examples/PatchTXTRecordset.json" + } + } + }, + "put": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_CreateOrUpdate", + "description": "Creates or updates a record set within a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set. Record sets of type SOA can be updated but not created (they are created when the DNS zone is created).", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecordSet" + }, + "description": "Parameters supplied to the CreateOrUpdate operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value to prevent accidentally overwritting any concurrent changes." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfNoneMatch", + "description": "Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will be ignored." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The record set has been created.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "200": { + "description": "The record set has been updated.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create A recordset": { + "$ref": "./examples/CreateOrUpdateARecordset.json" + }, + "Create AAAA recordset": { + "$ref": "./examples/CreateOrUpdateAAAARecordset.json" + }, + "Create CAA recordset": { + "$ref": "./examples/CreateOrUpdateCaaRecordset.json" + }, + "Create CNAME recordset": { + "$ref": "./examples/CreateOrUpdateCNAMERecordset.json" + }, + "Create MX recordset": { + "$ref": "./examples/CreateOrUpdateMXRecordset.json" + }, + "Create NS recordset": { + "$ref": "./examples/CreateOrUpdateNSRecordset.json" + }, + "Create PTR recordset": { + "$ref": "./examples/CreateOrUpdatePTRRecordset.json" + }, + "Create SOA recordset": { + "$ref": "./examples/CreateOrUpdateSOARecordset.json" + }, + "Create SRV recordset": { + "$ref": "./examples/CreateOrUpdateSRVRecordset.json" + }, + "Create TXT recordset": { + "$ref": "./examples/CreateOrUpdateTXTRecordset.json" + } + } + }, + "delete": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_Delete", + "description": "Deletes a record set from a DNS zone. This operation cannot be undone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set. Record sets of type SOA cannot be deleted (they are deleted when the DNS zone is deleted).", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the record set. Omit this value to always delete the current record set. Specify the last-seen etag value to prevent accidentally deleting any concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The record set was not found." + }, + "200": { + "description": "The record set has been deleted." + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete A recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete AAAA recordset": { + "$ref": "./examples/DeleteAAAARecordset.json" + }, + "Delete CAA recordset": { + "$ref": "./examples/DeleteCaaRecordset.json" + }, + "Delete CNAME recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete MX recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete NS recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete PTR recordset": { + "$ref": "./examples/DeletePTRRecordset.json" + }, + "Delete SRV recordset": { + "$ref": "./examples/DeleteSRVRecordset.json" + }, + "Delete TXT recordset": { + "$ref": "./examples/DeleteTXTRecordset.json" + } + } + }, + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_Get", + "description": "Gets a record set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set.", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get A recordset": { + "$ref": "./examples/GetARecordset.json" + }, + "Get AAAA recordset": { + "$ref": "./examples/GetAAAARecordset.json" + }, + "Get CAA recordset": { + "$ref": "./examples/GetCaaRecordset.json" + }, + "Get CNAME recordset": { + "$ref": "./examples/GetCNAMERecordset.json" + }, + "Get MX recordset": { + "$ref": "./examples/GetMXRecordset.json" + }, + "Get NS recordset": { + "$ref": "./examples/GetNSRecordset.json" + }, + "Get PTR recordset": { + "$ref": "./examples/GetPTRRecordset.json" + }, + "Get SOA recordset": { + "$ref": "./examples/GetSOARecordset.json" + }, + "Get SRV recordset": { + "$ref": "./examples/GetSRVRecordset.json" + }, + "Get TXT recordset": { + "$ref": "./examples/GetTXTRecordset.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}": { + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_ListByType", + "description": "Lists the record sets of a specified type in a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of record sets to enumerate.", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "name": "$recordsetnamesuffix", + "in": "query", + "required": false, + "type": "string", + "description": "The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with ." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSetListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List A recordsets": { + "$ref": "./examples/ListARecordset.json" + }, + "List AAAA recordsets": { + "$ref": "./examples/ListAAAARecordset.json" + }, + "List CAA recordsets": { + "$ref": "./examples/ListCaaRecordset.json" + }, + "List CNAME recordsets": { + "$ref": "./examples/ListCNAMERecordset.json" + }, + "List MX recordsets": { + "$ref": "./examples/ListMXRecordset.json" + }, + "List NS recordsets": { + "$ref": "./examples/ListNSRecordset.json" + }, + "List PTR recordsets": { + "$ref": "./examples/ListPTRRecordset.json" + }, + "List SOA recordsets": { + "$ref": "./examples/ListSOARecordset.json" + }, + "List SRV recordsets": { + "$ref": "./examples/ListSRVRecordset.json" + }, + "List TXT recordsets": { + "$ref": "./examples/ListTXTRecordset.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/recordsets": { + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_ListByDnsZone", + "description": "Lists all record sets in a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "name": "$recordsetnamesuffix", + "in": "query", + "required": false, + "type": "string", + "description": "The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with ." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSetListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List recordsets by zone": { + "$ref": "./examples/ListRecordSetsByZone.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/all": { + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_ListAllByDnsZone", + "description": "Lists all record sets in a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "name": "$recordsetnamesuffix", + "in": "query", + "required": false, + "type": "string", + "description": "The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with .", + "x-ms-client-name": "recordSetNameSuffix" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSetListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List recordsets by zone": { + "$ref": "./examples/ListRecordSetsByZone.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}": { + "put": { + "tags": [ + "Zones" + ], + "operationId": "Zones_CreateOrUpdate", + "description": "Creates or updates a DNS zone. Does not modify DNS records within the zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Zone" + }, + "description": "Parameters supplied to the CreateOrUpdate operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent accidentally overwritting any concurrent changes." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfNoneMatch", + "description": "Set to '*' to allow a new DNS zone to be created, but to prevent updating an existing zone. Other values will be ignored." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The DNS zone has been updated.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "201": { + "description": "The DNS zone has been created.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create zone": { + "$ref": "./examples/CreateOrUpdateZone.json" + } + } + }, + "delete": { + "tags": [ + "Zones" + ], + "operationId": "Zones_Delete", + "description": "Deletes a DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot be undone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the DNS zone. Omit this value to always delete the current zone. Specify the last-seen etag value to prevent accidentally deleting any concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The DNS zone was not found." + }, + "202": { + "description": "The DNS zone delete operation has been accepted and will complete asynchronously." + }, + "200": { + "description": "The DNS zone has been deleted." + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete zone": { + "$ref": "./examples/DeleteZone.json" + } + } + }, + "get": { + "tags": [ + "Zones" + ], + "operationId": "Zones_Get", + "description": "Gets a DNS zone. Retrieves the zone properties, but not the record sets within the zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get zone": { + "$ref": "./examples/GetZone.json" + } + } + }, + "patch": { + "tags": [ + "Zones" + ], + "operationId": "Zones_Update", + "description": "Updates a DNS zone. Does not modify DNS records within the zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ZoneUpdate" + }, + "description": "Parameters supplied to the Update operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent accidentally overwritting any concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The DNS zone has been updated.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Patch zone": { + "$ref": "./examples/PatchZone.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones": { + "get": { + "tags": [ + "Zones" + ], + "operationId": "Zones_ListByResourceGroup", + "description": "Lists the DNS zones within a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ZoneListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List zones by resource group": { + "$ref": "./examples/ListZonesByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/dnszones": { + "get": { + "tags": [ + "Zones" + ], + "operationId": "Zones_List", + "description": "Lists the DNS zones in all resource groups in a subscription.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of DNS zones to return. If not specified, returns up to 100 zones." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ZoneListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List zones by subscription": { + "$ref": "./examples/ListZonesBySubscription.json" + } + } + } + } + }, + "definitions": { + "ARecord": { + "properties": { + "ipv4Address": { + "type": "string", + "description": "The IPv4 address of this A record." + } + }, + "description": "An A record." + }, + "AaaaRecord": { + "properties": { + "ipv6Address": { + "type": "string", + "description": "The IPv6 address of this AAAA record." + } + }, + "description": "An AAAA record." + }, + "MxRecord": { + "properties": { + "preference": { + "type": "integer", + "format": "int32", + "description": "The preference value for this MX record." + }, + "exchange": { + "type": "string", + "description": "The domain name of the mail host for this MX record." + } + }, + "description": "An MX record." + }, + "NsRecord": { + "properties": { + "nsdname": { + "type": "string", + "description": "The name server name for this NS record." + } + }, + "description": "An NS record." + }, + "PtrRecord": { + "properties": { + "ptrdname": { + "type": "string", + "description": "The PTR target domain name for this PTR record." + } + }, + "description": "A PTR record." + }, + "SrvRecord": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority value for this SRV record." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "The weight value for this SRV record." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port value for this SRV record." + }, + "target": { + "type": "string", + "description": "The target domain name for this SRV record." + } + }, + "description": "An SRV record." + }, + "TxtRecord": { + "properties": { + "value": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The text value of this TXT record." + } + }, + "description": "A TXT record." + }, + "CnameRecord": { + "properties": { + "cname": { + "type": "string", + "description": "The canonical name for this CNAME record." + } + }, + "description": "A CNAME record." + }, + "SoaRecord": { + "properties": { + "host": { + "type": "string", + "description": "The domain name of the authoritative name server for this SOA record." + }, + "email": { + "type": "string", + "description": "The email contact for this SOA record." + }, + "serialNumber": { + "type": "integer", + "format": "int64", + "description": "The serial number for this SOA record." + }, + "refreshTime": { + "type": "integer", + "format": "int64", + "description": "The refresh value for this SOA record." + }, + "retryTime": { + "type": "integer", + "format": "int64", + "description": "The retry time for this SOA record." + }, + "expireTime": { + "type": "integer", + "format": "int64", + "description": "The expire time for this SOA record." + }, + "minimumTTL": { + "type": "integer", + "format": "int64", + "x-ms-client-name": "minimumTtl", + "description": "The minimum value for this SOA record. By convention this is used to determine the negative caching duration." + } + }, + "description": "An SOA record." + }, + "CaaRecord": { + "properties": { + "flags": { + "type": "integer", + "format": "int32", + "description": "The flags for this CAA record as an integer between 0 and 255." + }, + "tag": { + "type": "string", + "description": "The tag for this CAA record." + }, + "value": { + "type": "string", + "description": "The value for this CAA record." + } + }, + "description": "A CAA record." + }, + "RecordSetProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The metadata attached to the record set." + }, + "TTL": { + "type": "integer", + "format": "int64", + "description": "The TTL (time-to-live) of the records in the record set." + }, + "fqdn": { + "type": "string", + "description": "Fully qualified domain name of the record set.", + "readOnly": true + }, + "ARecords": { + "type": "array", + "items": { + "$ref": "#/definitions/ARecord" + }, + "description": "The list of A records in the record set." + }, + "AAAARecords": { + "type": "array", + "x-ms-client-name": "AaaaRecords", + "items": { + "$ref": "#/definitions/AaaaRecord" + }, + "description": "The list of AAAA records in the record set." + }, + "MXRecords": { + "type": "array", + "x-ms-client-name": "MxRecords", + "items": { + "$ref": "#/definitions/MxRecord" + }, + "description": "The list of MX records in the record set." + }, + "NSRecords": { + "type": "array", + "x-ms-client-name": "NsRecords", + "items": { + "$ref": "#/definitions/NsRecord" + }, + "description": "The list of NS records in the record set." + }, + "PTRRecords": { + "type": "array", + "x-ms-client-name": "PtrRecords", + "items": { + "$ref": "#/definitions/PtrRecord" + }, + "description": "The list of PTR records in the record set." + }, + "SRVRecords": { + "type": "array", + "x-ms-client-name": "SrvRecords", + "items": { + "$ref": "#/definitions/SrvRecord" + }, + "description": "The list of SRV records in the record set." + }, + "TXTRecords": { + "type": "array", + "x-ms-client-name": "TxtRecords", + "items": { + "$ref": "#/definitions/TxtRecord" + }, + "description": "The list of TXT records in the record set." + }, + "CNAMERecord": { + "$ref": "#/definitions/CnameRecord", + "x-ms-client-name": "CnameRecord", + "description": "The CNAME record in the record set." + }, + "SOARecord": { + "$ref": "#/definitions/SoaRecord", + "x-ms-client-name": "SoaRecord", + "description": "The SOA record in the record set." + }, + "caaRecords": { + "type": "array", + "x-ms-client-name": "CaaRecords", + "items": { + "$ref": "#/definitions/CaaRecord" + }, + "description": "The list of CAA records in the record set." + } + }, + "description": "Represents the properties of the records in the record set." + }, + "RecordSet": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the record set.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the record set.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the record set.", + "readOnly": true + }, + "etag": { + "type": "string", + "description": "The etag of the record set." + }, + "properties": { + "$ref": "#/definitions/RecordSetProperties", + "x-ms-client-flatten": true, + "description": "The properties of the record set." + } + }, + "description": "Describes a DNS record set (a collection of DNS records with the same name and type).", + "x-ms-azure-resource": true + }, + "RecordSetUpdateParameters": { + "properties": { + "RecordSet": { + "$ref": "#/definitions/RecordSet", + "description": "Specifies information about the record set being updated." + } + }, + "description": "Parameters supplied to update a record set." + }, + "RecordSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "Information about the record sets in the response." + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + }, + "description": "The response to a record set List operation." + }, + "ZoneProperties": { + "properties": { + "maxNumberOfRecordSets": { + "type": "integer", + "format": "int64", + "description": "The maximum number of record sets that can be created in this DNS zone. This is a read-only property and any attempt to set this value will be ignored.", + "readOnly": true + }, + "numberOfRecordSets": { + "type": "integer", + "format": "int64", + "description": "The current number of record sets in this DNS zone. This is a read-only property and any attempt to set this value will be ignored.", + "readOnly": true + }, + "nameServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The name servers for this DNS zone. This is a read-only property and any attempt to set this value will be ignored.", + "readOnly": true + }, + "zoneType": { + "type": "string", + "enum": [ + "Public", + "Private" + ], + "x-ms-enum": { + "name": "ZoneType", + "modelAsString": false + }, + "default": "Public", + "description": "The type of this DNS zone (Public or Private)." + }, + "registrationVirtualNetworks": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to virtual networks that register hostnames in this DNS zone. This is a only when ZoneType is Private." + }, + "resolutionVirtualNetworks": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to virtual networks that resolve records in this DNS zone. This is a only when ZoneType is Private." + } + }, + "description": "Represents the properties of the zone." + }, + "Zone": { + "properties": { + "etag": { + "type": "string", + "description": "The etag of the zone." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ZoneProperties", + "description": "The properties of the zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a DNS zone." + }, + "ZoneUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Describes a request to update a DNS zone." + }, + "ZoneListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Zone" + }, + "description": "Information about the DNS zones." + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + }, + "description": "The response to a Zone List or ListAll operation." + }, + "Resource": { + "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.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "required": [ + "location" + ], + "description": "Common properties of an Azure Resource Manager resource" + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id." + } + }, + "description": "A reference to a another resource" + }, + "CloudError": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "The error message body" + } + }, + "x-ms-external": true, + "description": "An error message" + }, + "CloudErrorBody": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code" + }, + "message": { + "type": "string", + "description": "A description of what caused the error" + }, + "target": { + "type": "string", + "description": "The target resource of the error message" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "Extra error information" + } + }, + "x-ms-external": true, + "description": "The body of an error message" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Specifies the Azure subscription ID, which uniquely identifies the Microsoft Azure subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Specifies the API version." + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateAAAARecordset.json new file mode 100644 index 000000000000..c77cfbcd8422 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateAAAARecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateARecordset.json new file mode 100644 index 000000000000..4fb42d145ba5 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateARecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateCNAMERecordset.json new file mode 100644 index 000000000000..24bf6f80ad7e --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateCNAMERecordset.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateCaaRecordset.json new file mode 100644 index 000000000000..a1ac2017b881 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateCaaRecordset.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateMXRecordset.json new file mode 100644 index 000000000000..f2e5f4cd61af --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateMXRecordset.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateNSRecordset.json new file mode 100644 index 000000000000..6460e5d28ce7 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateNSRecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdatePTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdatePTRRecordset.json new file mode 100644 index 000000000000..9f426009fdd9 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdatePTRRecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdatePrivateZone.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdatePrivateZone.json new file mode 100644 index 000000000000..77aae07dab1f --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdatePrivateZone.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "parameters": { + "location": "Global", + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 1, + "nameServers": [], + "zoneType": "Private", + "registrationVirtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + } + ], + "resolutionVirtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + } + ] + }, + "tags": { + "key1": "value1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 1, + "nameServers": [], + "zoneType": "Private", + "registrationVirtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + } + ], + "resolutionVirtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + } + ] + }, + "tags": { + "key1": "value1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateSOARecordset.json new file mode 100644 index 000000000000..27e35461e5df --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateSOARecordset.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "@", + "recordType": "SOA", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateSRVRecordset.json new file mode 100644 index 000000000000..76bc02fe359d --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateSRVRecordset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateTXTRecordset.json new file mode 100644 index 000000000000..258742a1d5b2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateTXTRecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateZone.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateZone.json new file mode 100644 index 000000000000..e2f4fb0c58f2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/CreateOrUpdateZone.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "parameters": { + "location": "Global", + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ], + "zoneType":"Public" + }, + "tags": { + "key1": "value1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ], + "zoneType":"Public" + }, + "tags": { + "key1": "value1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteAAAARecordset.json new file mode 100644 index 000000000000..3c54ae0f2fd4 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteAAAARecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteARecordset.json new file mode 100644 index 000000000000..3aa2b719465a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteARecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteCNAMERecordset.json new file mode 100644 index 000000000000..8f1497d35bbb --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteCNAMERecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteCaaRecordset.json new file mode 100644 index 000000000000..c237fd4a81f2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteCaaRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteMXRecordset.json new file mode 100644 index 000000000000..ef04a4e9e7f3 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteMXRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteNSRecordset.json new file mode 100644 index 000000000000..2330a8064651 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteNSRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeletePTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeletePTRRecordset.json new file mode 100644 index 000000000000..553c94bcc3f0 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeletePTRRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteSRVRecordset.json new file mode 100644 index 000000000000..21fc3bf0785a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteSRVRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteTXTRecordset.json new file mode 100644 index 000000000000..fd1dbfb4f1e2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteTXTRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteZone.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteZone.json new file mode 100644 index 000000000000..e7837824fc23 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/DeleteZone.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://asyncoperationstatusurl" + } + }, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetAAAARecordset.json new file mode 100644 index 000000000000..91cb55cbe06a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetAAAARecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetARecordset.json new file mode 100644 index 000000000000..54c329776155 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetARecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetCNAMERecordset.json new file mode 100644 index 000000000000..17373b90361e --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetCNAMERecordset.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetCaaRecordset.json new file mode 100644 index 000000000000..4edc848f5504 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetCaaRecordset.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetMXRecordset.json new file mode 100644 index 000000000000..6d521825c089 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetMXRecordset.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetNSRecordset.json new file mode 100644 index 000000000000..30750e21ebf2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetNSRecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetPTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetPTRRecordset.json new file mode 100644 index 000000000000..6c80ad294e33 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetPTRRecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetSOARecordset.json new file mode 100644 index 000000000000..be94df8af220 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetSOARecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "@", + "recordType": "SOA" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetSRVRecordset.json new file mode 100644 index 000000000000..7beaecd9281a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetSRVRecordset.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetTXTRecordset.json new file mode 100644 index 000000000000..25d05771bb11 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetTXTRecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetZone.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetZone.json new file mode 100644 index 000000000000..69d34abae586 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/GetZone.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListAAAARecordset.json new file mode 100644 index 000000000000..f8ba868d23ed --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListAAAARecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "AAAA" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListARecordset.json new file mode 100644 index 000000000000..526fe4a44282 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListARecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "A" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListCNAMERecordset.json new file mode 100644 index 000000000000..1b425a17904e --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListCNAMERecordset.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "CNAME" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListCaaRecordset.json new file mode 100644 index 000000000000..574afd297970 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListCaaRecordset.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "CAA" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListMXRecordset.json new file mode 100644 index 000000000000..46de44626d8a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListMXRecordset.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "MX" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListNSRecordset.json new file mode 100644 index 000000000000..168ec56a7b06 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListNSRecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "NS" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListPTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListPTRRecordset.json new file mode 100644 index 000000000000..341e5e769d8a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListPTRRecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "PTR" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListRecordSetsByZone.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListRecordSetsByZone.json new file mode 100644 index 000000000000..e4704d503ac9 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListRecordSetsByZone.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record2", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record2", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record2.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListSOARecordset.json new file mode 100644 index 000000000000..cceab2eea3c7 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListSOARecordset.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "SOA" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListSRVRecordset.json new file mode 100644 index 000000000000..098948746c45 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListSRVRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "SRV" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListTXTRecordset.json new file mode 100644 index 000000000000..fc6ca39cdab2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListTXTRecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "recordType": "TXT" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListZonesByResourceGroup.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListZonesByResourceGroup.json new file mode 100644 index 000000000000..18f389d1272e --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListZonesByResourceGroup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone2", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone2", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 300, + "nameServers": [ + "ns1-02.azure-dns.com", + "ns2-02.azure-dns.net", + "ns3-02.azure-dns.org", + "ns4-02.azure-dns.info" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListZonesBySubscription.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListZonesBySubscription.json new file mode 100644 index 000000000000..3123cdae5540 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/ListZonesBySubscription.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2018-03-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/providers/Microsoft.Network/dnsZones?api-version=2018-03-01-preview&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/dnsZones/zone2", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone2", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 300, + "nameServers": [ + "ns1-02.azure-dns.com", + "ns2-02.azure-dns.net", + "ns3-02.azure-dns.org", + "ns4-02.azure-dns.info" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchAAAARecordset.json new file mode 100644 index 000000000000..f1298d25bcbe --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchAAAARecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchARecordset.json new file mode 100644 index 000000000000..70034cadd738 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchARecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchCNAMERecordset.json new file mode 100644 index 000000000000..e618f0013aec --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchCNAMERecordset.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchCaaRecordset.json new file mode 100644 index 000000000000..d2888020e4c3 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchCaaRecordset.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchMXRecordset.json new file mode 100644 index 000000000000..c98538379052 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchMXRecordset.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchNSRecordset.json new file mode 100644 index 000000000000..61e6e47807d6 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchNSRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchPTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchPTRRecordset.json new file mode 100644 index 000000000000..25332972b292 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchPTRRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchSOARecordset.json new file mode 100644 index 000000000000..5a9509077865 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchSOARecordset.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "@", + "recordType": "SOA", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchSRVRecordset.json new file mode 100644 index 000000000000..734495d189f2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchSRVRecordset.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchTXTRecordset.json new file mode 100644 index 000000000000..913e82a3a09a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchTXTRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchZone.json b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchZone.json new file mode 100644 index 000000000000..c7746e904b95 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/preview/2018-03-01-preview/examples/PatchZone.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2018-03-01-preview", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key2": "value2" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/dns.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/dns.json new file mode 100644 index 000000000000..e8c733e7d28f --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/dns.json @@ -0,0 +1,1600 @@ +{ + "swagger": "2.0", + "info": { + "title": "DnsManagementClient", + "description": "The DNS Management Client.", + "version": "2017-10-01" + }, + "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": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}": { + "patch": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_Update", + "description": "Updates a record set within a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set.", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecordSet" + }, + "description": "Parameters supplied to the Update operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value to prevent accidentally overwritting concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The record set has been updated.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Patch A recordset": { + "$ref": "./examples/PatchARecordset.json" + }, + "Patch AAAA recordset": { + "$ref": "./examples/PatchAAAARecordset.json" + }, + "Patch CAA recordset": { + "$ref": "./examples/PatchCaaRecordset.json" + }, + "Patch CNAME recordset": { + "$ref": "./examples/PatchCNAMERecordset.json" + }, + "Patch MX recordset": { + "$ref": "./examples/PatchMXRecordset.json" + }, + "Patch NS recordset": { + "$ref": "./examples/PatchNSRecordset.json" + }, + "Patch PTR recordset": { + "$ref": "./examples/PatchPTRRecordset.json" + }, + "Patch SOA recordset": { + "$ref": "./examples/PatchSOARecordset.json" + }, + "Patch SRV recordset": { + "$ref": "./examples/PatchSRVRecordset.json" + }, + "Patch TXT recordset": { + "$ref": "./examples/PatchTXTRecordset.json" + } + } + }, + "put": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_CreateOrUpdate", + "description": "Creates or updates a record set within a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set. Record sets of type SOA can be updated but not created (they are created when the DNS zone is created).", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RecordSet" + }, + "description": "Parameters supplied to the CreateOrUpdate operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value to prevent accidentally overwritting any concurrent changes." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfNoneMatch", + "description": "Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will be ignored." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The record set has been created.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "200": { + "description": "The record set has been updated.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create A recordset": { + "$ref": "./examples/CreateOrUpdateARecordset.json" + }, + "Create AAAA recordset": { + "$ref": "./examples/CreateOrUpdateAAAARecordset.json" + }, + "Create CAA recordset": { + "$ref": "./examples/CreateOrUpdateCaaRecordset.json" + }, + "Create CNAME recordset": { + "$ref": "./examples/CreateOrUpdateCNAMERecordset.json" + }, + "Create MX recordset": { + "$ref": "./examples/CreateOrUpdateMXRecordset.json" + }, + "Create NS recordset": { + "$ref": "./examples/CreateOrUpdateNSRecordset.json" + }, + "Create PTR recordset": { + "$ref": "./examples/CreateOrUpdatePTRRecordset.json" + }, + "Create SOA recordset": { + "$ref": "./examples/CreateOrUpdateSOARecordset.json" + }, + "Create SRV recordset": { + "$ref": "./examples/CreateOrUpdateSRVRecordset.json" + }, + "Create TXT recordset": { + "$ref": "./examples/CreateOrUpdateTXTRecordset.json" + } + } + }, + "delete": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_Delete", + "description": "Deletes a record set from a DNS zone. This operation cannot be undone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set. Record sets of type SOA cannot be deleted (they are deleted when the DNS zone is deleted).", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the record set. Omit this value to always delete the current record set. Specify the last-seen etag value to prevent accidentally deleting any concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The record set was not found." + }, + "200": { + "description": "The record set has been deleted." + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete A recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete AAAA recordset": { + "$ref": "./examples/DeleteAAAARecordset.json" + }, + "Delete CAA recordset": { + "$ref": "./examples/DeleteCaaRecordset.json" + }, + "Delete CNAME recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete MX recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete NS recordset": { + "$ref": "./examples/DeleteARecordset.json" + }, + "Delete PTR recordset": { + "$ref": "./examples/DeletePTRRecordset.json" + }, + "Delete SRV recordset": { + "$ref": "./examples/DeleteSRVRecordset.json" + }, + "Delete TXT recordset": { + "$ref": "./examples/DeleteTXTRecordset.json" + } + } + }, + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_Get", + "description": "Gets a record set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "relativeRecordSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the record set, relative to the name of the zone.", + "x-ms-skip-url-encoding": true + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of DNS record in this record set.", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSet" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get A recordset": { + "$ref": "./examples/GetARecordset.json" + }, + "Get AAAA recordset": { + "$ref": "./examples/GetAAAARecordset.json" + }, + "Get CAA recordset": { + "$ref": "./examples/GetCaaRecordset.json" + }, + "Get CNAME recordset": { + "$ref": "./examples/GetCNAMERecordset.json" + }, + "Get MX recordset": { + "$ref": "./examples/GetMXRecordset.json" + }, + "Get NS recordset": { + "$ref": "./examples/GetNSRecordset.json" + }, + "Get PTR recordset": { + "$ref": "./examples/GetPTRRecordset.json" + }, + "Get SOA recordset": { + "$ref": "./examples/GetSOARecordset.json" + }, + "Get SRV recordset": { + "$ref": "./examples/GetSRVRecordset.json" + }, + "Get TXT recordset": { + "$ref": "./examples/GetTXTRecordset.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}": { + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_ListByType", + "description": "Lists the record sets of a specified type in a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "recordType", + "in": "path", + "required": true, + "type": "string", + "description": "The type of record sets to enumerate.", + "enum": [ + "A", + "AAAA", + "CAA", + "CNAME", + "MX", + "NS", + "PTR", + "SOA", + "SRV", + "TXT" + ], + "x-ms-enum": { + "name": "RecordType", + "modelAsString": false + } + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "name": "$recordsetnamesuffix", + "in": "query", + "required": false, + "type": "string", + "description": "The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with ." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSetListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List A recordsets": { + "$ref": "./examples/ListARecordset.json" + }, + "List AAAA recordsets": { + "$ref": "./examples/ListAAAARecordset.json" + }, + "List CAA recordsets": { + "$ref": "./examples/ListCaaRecordset.json" + }, + "List CNAME recordsets": { + "$ref": "./examples/ListCNAMERecordset.json" + }, + "List MX recordsets": { + "$ref": "./examples/ListMXRecordset.json" + }, + "List NS recordsets": { + "$ref": "./examples/ListNSRecordset.json" + }, + "List PTR recordsets": { + "$ref": "./examples/ListPTRRecordset.json" + }, + "List SOA recordsets": { + "$ref": "./examples/ListSOARecordset.json" + }, + "List SRV recordsets": { + "$ref": "./examples/ListSRVRecordset.json" + }, + "List TXT recordsets": { + "$ref": "./examples/ListTXTRecordset.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/recordsets": { + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_ListByDnsZone", + "description": "Lists all record sets in a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "name": "$recordsetnamesuffix", + "in": "query", + "required": false, + "type": "string", + "description": "The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with ." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSetListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List recordsets by zone": { + "$ref": "./examples/ListRecordSetsByZone.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/all": { + "get": { + "tags": [ + "RecordSets" + ], + "operationId": "RecordSets_ListAllByDnsZone", + "description": "Lists all record sets in a DNS zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "name": "$recordsetnamesuffix", + "in": "query", + "required": false, + "type": "string", + "description": "The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with .", + "x-ms-client-name": "recordSetNameSuffix" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/RecordSetListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List recordsets by zone": { + "$ref": "./examples/ListRecordSetsByZone.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}": { + "put": { + "tags": [ + "Zones" + ], + "operationId": "Zones_CreateOrUpdate", + "description": "Creates or updates a DNS zone. Does not modify DNS records within the zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Zone" + }, + "description": "Parameters supplied to the CreateOrUpdate operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent accidentally overwritting any concurrent changes." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfNoneMatch", + "description": "Set to '*' to allow a new DNS zone to be created, but to prevent updating an existing zone. Other values will be ignored." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The DNS zone has been updated.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "201": { + "description": "The DNS zone has been created.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create zone": { + "$ref": "./examples/CreateOrUpdateZone.json" + } + } + }, + "delete": { + "tags": [ + "Zones" + ], + "operationId": "Zones_Delete", + "description": "Deletes a DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot be undone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the DNS zone. Omit this value to always delete the current zone. Specify the last-seen etag value to prevent accidentally deleting any concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The DNS zone was not found." + }, + "202": { + "description": "The DNS zone delete operation has been accepted and will complete asynchronously." + }, + "200": { + "description": "The DNS zone has been deleted." + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete zone": { + "$ref": "./examples/DeleteZone.json" + } + } + }, + "get": { + "tags": [ + "Zones" + ], + "operationId": "Zones_Get", + "description": "Gets a DNS zone. Retrieves the zone properties, but not the record sets within the zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get zone": { + "$ref": "./examples/GetZone.json" + } + } + }, + "patch": { + "tags": [ + "Zones" + ], + "operationId": "Zones_Update", + "description": "Updates a DNS zone. Does not modify DNS records within the zone.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "zoneName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DNS zone (without a terminating dot)." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ZoneUpdate" + }, + "description": "Parameters supplied to the Update operation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "x-ms-client-name": "IfMatch", + "description": "The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent accidentally overwritting any concurrent changes." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The DNS zone has been updated.", + "schema": { + "$ref": "#/definitions/Zone" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Patch zone": { + "$ref": "./examples/PatchZone.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones": { + "get": { + "tags": [ + "Zones" + ], + "operationId": "Zones_ListByResourceGroup", + "description": "Lists the DNS zones within a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of record sets to return. If not specified, returns up to 100 record sets." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ZoneListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List zones by resource group": { + "$ref": "./examples/ListZonesByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/dnszones": { + "get": { + "tags": [ + "Zones" + ], + "operationId": "Zones_List", + "description": "Lists the DNS zones in all resource groups in a subscription.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of DNS zones to return. If not specified, returns up to 100 zones." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ZoneListResult" + } + }, + "default": { + "description": "Default response. It will be deserialized as per the Error definition.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List zones by subscription": { + "$ref": "./examples/ListZonesBySubscription.json" + } + } + } + } + }, + "definitions": { + "ARecord": { + "properties": { + "ipv4Address": { + "type": "string", + "description": "The IPv4 address of this A record." + } + }, + "description": "An A record." + }, + "AaaaRecord": { + "properties": { + "ipv6Address": { + "type": "string", + "description": "The IPv6 address of this AAAA record." + } + }, + "description": "An AAAA record." + }, + "MxRecord": { + "properties": { + "preference": { + "type": "integer", + "format": "int32", + "description": "The preference value for this MX record." + }, + "exchange": { + "type": "string", + "description": "The domain name of the mail host for this MX record." + } + }, + "description": "An MX record." + }, + "NsRecord": { + "properties": { + "nsdname": { + "type": "string", + "description": "The name server name for this NS record." + } + }, + "description": "An NS record." + }, + "PtrRecord": { + "properties": { + "ptrdname": { + "type": "string", + "description": "The PTR target domain name for this PTR record." + } + }, + "description": "A PTR record." + }, + "SrvRecord": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority value for this SRV record." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "The weight value for this SRV record." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port value for this SRV record." + }, + "target": { + "type": "string", + "description": "The target domain name for this SRV record." + } + }, + "description": "An SRV record." + }, + "TxtRecord": { + "properties": { + "value": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The text value of this TXT record." + } + }, + "description": "A TXT record." + }, + "CnameRecord": { + "properties": { + "cname": { + "type": "string", + "description": "The canonical name for this CNAME record." + } + }, + "description": "A CNAME record." + }, + "SoaRecord": { + "properties": { + "host": { + "type": "string", + "description": "The domain name of the authoritative name server for this SOA record." + }, + "email": { + "type": "string", + "description": "The email contact for this SOA record." + }, + "serialNumber": { + "type": "integer", + "format": "int64", + "description": "The serial number for this SOA record." + }, + "refreshTime": { + "type": "integer", + "format": "int64", + "description": "The refresh value for this SOA record." + }, + "retryTime": { + "type": "integer", + "format": "int64", + "description": "The retry time for this SOA record." + }, + "expireTime": { + "type": "integer", + "format": "int64", + "description": "The expire time for this SOA record." + }, + "minimumTTL": { + "type": "integer", + "format": "int64", + "x-ms-client-name": "minimumTtl", + "description": "The minimum value for this SOA record. By convention this is used to determine the negative caching duration." + } + }, + "description": "An SOA record." + }, + "CaaRecord": { + "properties": { + "flags": { + "type": "integer", + "format": "int32", + "description": "The flags for this CAA record as an integer between 0 and 255." + }, + "tag": { + "type": "string", + "description": "The tag for this CAA record." + }, + "value": { + "type": "string", + "description": "The value for this CAA record." + } + }, + "description": "A CAA record." + }, + "RecordSetProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The metadata attached to the record set." + }, + "TTL": { + "type": "integer", + "format": "int64", + "description": "The TTL (time-to-live) of the records in the record set." + }, + "fqdn": { + "type": "string", + "description": "Fully qualified domain name of the record set.", + "readOnly": true + }, + "ARecords": { + "type": "array", + "items": { + "$ref": "#/definitions/ARecord" + }, + "description": "The list of A records in the record set." + }, + "AAAARecords": { + "type": "array", + "x-ms-client-name": "AaaaRecords", + "items": { + "$ref": "#/definitions/AaaaRecord" + }, + "description": "The list of AAAA records in the record set." + }, + "MXRecords": { + "type": "array", + "x-ms-client-name": "MxRecords", + "items": { + "$ref": "#/definitions/MxRecord" + }, + "description": "The list of MX records in the record set." + }, + "NSRecords": { + "type": "array", + "x-ms-client-name": "NsRecords", + "items": { + "$ref": "#/definitions/NsRecord" + }, + "description": "The list of NS records in the record set." + }, + "PTRRecords": { + "type": "array", + "x-ms-client-name": "PtrRecords", + "items": { + "$ref": "#/definitions/PtrRecord" + }, + "description": "The list of PTR records in the record set." + }, + "SRVRecords": { + "type": "array", + "x-ms-client-name": "SrvRecords", + "items": { + "$ref": "#/definitions/SrvRecord" + }, + "description": "The list of SRV records in the record set." + }, + "TXTRecords": { + "type": "array", + "x-ms-client-name": "TxtRecords", + "items": { + "$ref": "#/definitions/TxtRecord" + }, + "description": "The list of TXT records in the record set." + }, + "CNAMERecord": { + "$ref": "#/definitions/CnameRecord", + "x-ms-client-name": "CnameRecord", + "description": "The CNAME record in the record set." + }, + "SOARecord": { + "$ref": "#/definitions/SoaRecord", + "x-ms-client-name": "SoaRecord", + "description": "The SOA record in the record set." + }, + "caaRecords": { + "type": "array", + "x-ms-client-name": "CaaRecords", + "items": { + "$ref": "#/definitions/CaaRecord" + }, + "description": "The list of CAA records in the record set." + } + }, + "description": "Represents the properties of the records in the record set." + }, + "RecordSet": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the record set.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the record set.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the record set.", + "readOnly": true + }, + "etag": { + "type": "string", + "description": "The etag of the record set." + }, + "properties": { + "$ref": "#/definitions/RecordSetProperties", + "x-ms-client-flatten": true, + "description": "The properties of the record set." + } + }, + "description": "Describes a DNS record set (a collection of DNS records with the same name and type).", + "x-ms-azure-resource": true + }, + "RecordSetUpdateParameters": { + "properties": { + "RecordSet": { + "$ref": "#/definitions/RecordSet", + "description": "Specifies information about the record set being updated." + } + }, + "description": "Parameters supplied to update a record set." + }, + "RecordSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "Information about the record sets in the response." + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + }, + "description": "The response to a record set List operation." + }, + "ZoneProperties": { + "properties": { + "maxNumberOfRecordSets": { + "type": "integer", + "format": "int64", + "description": "The maximum number of record sets that can be created in this DNS zone. This is a read-only property and any attempt to set this value will be ignored.", + "readOnly": true + }, + "numberOfRecordSets": { + "type": "integer", + "format": "int64", + "description": "The current number of record sets in this DNS zone. This is a read-only property and any attempt to set this value will be ignored.", + "readOnly": true + }, + "nameServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The name servers for this DNS zone. This is a read-only property and any attempt to set this value will be ignored.", + "readOnly": true + } + }, + "description": "Represents the properties of the zone." + }, + "Zone": { + "properties": { + "etag": { + "type": "string", + "description": "The etag of the zone." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ZoneProperties", + "description": "The properties of the zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a DNS zone." + }, + "ZoneUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Describes a request to update a DNS zone." + }, + "ZoneListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Zone" + }, + "description": "Information about the DNS zones." + }, + "nextLink": { + "type": "string", + "description": "The continuation token for the next page of results.", + "readOnly": true + } + }, + "description": "The response to a Zone List or ListAll operation." + }, + "Resource": { + "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.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "required": [ + "location" + ], + "description": "Common properties of an Azure Resource Manager resource" + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id." + } + }, + "x-ms-external": true, + "description": "A reference to a another resource" + }, + "CloudError": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "The error message body" + } + }, + "x-ms-external": true, + "description": "An error message" + }, + "CloudErrorBody": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code" + }, + "message": { + "type": "string", + "description": "A description of what caused the error" + }, + "target": { + "type": "string", + "description": "The target resource of the error message" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "Extra error information" + } + }, + "x-ms-external": true, + "description": "The body of an error message" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Specifies the Azure subscription ID, which uniquely identifies the Microsoft Azure subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Specifies the API version." + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateAAAARecordset.json new file mode 100644 index 000000000000..f6e67fffa943 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateAAAARecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-09-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateARecordset.json new file mode 100644 index 000000000000..a88c76ff27cf --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateARecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateCNAMERecordset.json new file mode 100644 index 000000000000..9f94f6697129 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateCNAMERecordset.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateCaaRecordset.json new file mode 100644 index 000000000000..95856bd4ac32 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateCaaRecordset.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateMXRecordset.json new file mode 100644 index 000000000000..66641c3dc630 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateMXRecordset.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateNSRecordset.json new file mode 100644 index 000000000000..340725021f88 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateNSRecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdatePTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdatePTRRecordset.json new file mode 100644 index 000000000000..00e51df90693 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdatePTRRecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateSOARecordset.json new file mode 100644 index 000000000000..1a6e8f6caa1d --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateSOARecordset.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "@", + "recordType": "SOA", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateSRVRecordset.json new file mode 100644 index 000000000000..af735af91933 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateSRVRecordset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateTXTRecordset.json new file mode 100644 index 000000000000..0aedd2e22689 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateTXTRecordset.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT", + "parameters": { + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateZone.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateZone.json new file mode 100644 index 000000000000..1ee58adbfd42 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/CreateOrUpdateZone.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "parameters": { + "location": "Global", + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteAAAARecordset.json new file mode 100644 index 000000000000..4c93a1905418 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteAAAARecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteARecordset.json new file mode 100644 index 000000000000..ad3dd481d00b --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteARecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteCNAMERecordset.json new file mode 100644 index 000000000000..b4dd1f9166f4 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteCNAMERecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteCaaRecordset.json new file mode 100644 index 000000000000..639f98c22fee --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteCaaRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteMXRecordset.json new file mode 100644 index 000000000000..ab132a3df38d --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteMXRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteNSRecordset.json new file mode 100644 index 000000000000..823f75608f70 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteNSRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeletePTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeletePTRRecordset.json new file mode 100644 index 000000000000..f9df501bf4f2 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeletePTRRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteSRVRecordset.json new file mode 100644 index 000000000000..9af6262230fc --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteSRVRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteTXTRecordset.json new file mode 100644 index 000000000000..011b051d9f8d --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteTXTRecordset.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteZone.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteZone.json new file mode 100644 index 000000000000..23857faee2f6 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/DeleteZone.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://asyncoperationstatusurl" + } + }, + "204": {} + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetAAAARecordset.json new file mode 100644 index 000000000000..2baf90fa80ec --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetAAAARecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetARecordset.json new file mode 100644 index 000000000000..f398f24fe452 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetARecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetCNAMERecordset.json new file mode 100644 index 000000000000..ceb34558602b --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetCNAMERecordset.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetCaaRecordset.json new file mode 100644 index 000000000000..3446e63cbb72 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetCaaRecordset.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetMXRecordset.json new file mode 100644 index 000000000000..58e0fa7fbd5e --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetMXRecordset.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetNSRecordset.json new file mode 100644 index 000000000000..20658800c869 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetNSRecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetPTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetPTRRecordset.json new file mode 100644 index 000000000000..9b64d5f0cdfa --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetPTRRecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetSOARecordset.json new file mode 100644 index 000000000000..7f8f1588a3c1 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetSOARecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "@", + "recordType": "SOA" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetSRVRecordset.json new file mode 100644 index 000000000000..08f05fe6b00a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetSRVRecordset.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetTXTRecordset.json new file mode 100644 index 000000000000..561eedd38ad6 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetTXTRecordset.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetZone.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetZone.json new file mode 100644 index 000000000000..b84f7a69eac5 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/GetZone.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListAAAARecordset.json new file mode 100644 index 000000000000..e43aca35aa89 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListAAAARecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "AAAA" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListARecordset.json new file mode 100644 index 000000000000..a68653cf5c30 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListARecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "A" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListCNAMERecordset.json new file mode 100644 index 000000000000..dbcbd813729a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListCNAMERecordset.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "CNAME" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListCaaRecordset.json new file mode 100644 index 000000000000..b6667b683600 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListCaaRecordset.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "CAA" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListMXRecordset.json new file mode 100644 index 000000000000..c4ec665a6455 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListMXRecordset.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "MX" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListNSRecordset.json new file mode 100644 index 000000000000..fc6bb7100c6d --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListNSRecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "NS" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListPTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListPTRRecordset.json new file mode 100644 index 000000000000..81dcea969f37 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListPTRRecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "PTR" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListRecordSetsByZone.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListRecordSetsByZone.json new file mode 100644 index 000000000000..2036c8a8c49a --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListRecordSetsByZone.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-09-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA?api-version=2017-09-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record2", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record2", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record2.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListSOARecordset.json new file mode 100644 index 000000000000..04e530a4c1e0 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListSOARecordset.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "SOA" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListSRVRecordset.json new file mode 100644 index 000000000000..405a414bd140 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListSRVRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "SRV" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListTXTRecordset.json new file mode 100644 index 000000000000..57428d42ab27 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListTXTRecordset.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "recordType": "TXT" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key1": "value1" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListZonesByResourceGroup.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListZonesByResourceGroup.json new file mode 100644 index 000000000000..61ee5130eb06 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListZonesByResourceGroup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone2", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone2", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 300, + "nameServers": [ + "ns1-02.azure-dns.com", + "ns2-02.azure-dns.net", + "ns3-02.azure-dns.org", + "ns4-02.azure-dns.info" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListZonesBySubscription.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListZonesBySubscription.json new file mode 100644 index 000000000000..2e79c1003e77 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/ListZonesBySubscription.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2017-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://servicehost/subscriptions/subid/providers/Microsoft.Network/dnsZones?api-version=2017-10-01&$skipToken=skipToken", + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key1": "value1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/dnsZones/zone2", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone2", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 300, + "nameServers": [ + "ns1-02.azure-dns.com", + "ns2-02.azure-dns.net", + "ns3-02.azure-dns.org", + "ns4-02.azure-dns.info" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchAAAARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchAAAARecordset.json new file mode 100644 index 000000000000..827364a19e33 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchAAAARecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "AAAA", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/AAAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/AAAA", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "AAAARecords": [ + { + "ipv6Address": "::1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchARecordset.json new file mode 100644 index 000000000000..201a2b18e206 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchARecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "A", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/A/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/A", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "ARecords": [ + { + "ipv4Address": "127.0.0.1" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchCNAMERecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchCNAMERecordset.json new file mode 100644 index 000000000000..9084b361a87b --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchCNAMERecordset.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CNAME", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CNAME/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CNAME", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "CNAMERecord": { + "cname": "contoso.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchCaaRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchCaaRecordset.json new file mode 100644 index 000000000000..63beabe4032d --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchCaaRecordset.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "CAA", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/CAA/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/CAA", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "caaRecords": [ + { + "flags": 0, + "tag": "issue", + "value": "ca.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchMXRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchMXRecordset.json new file mode 100644 index 000000000000..cb924d351c80 --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchMXRecordset.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "MX", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/MX/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/MX", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "MXRecords": [ + { + "preference": 0, + "exchange": "mail.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchNSRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchNSRecordset.json new file mode 100644 index 000000000000..0af8cf4172eb --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchNSRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "NS", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/NS/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/NS", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "NSRecords": [ + { + "nsdname": "ns1.contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchPTRRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchPTRRecordset.json new file mode 100644 index 000000000000..a7f141eab4cb --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchPTRRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "0.0.127.in-addr.arpa", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "1", + "recordType": "PTR", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/0.0.127.in-addr.arpa/PTR/1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "1", + "type": "Microsoft.Network/dnsZones/PTR", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "1.0.0.127.in-addr.arpa", + "PTRRecords": [ + { + "ptrdname": "localhost" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchSOARecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchSOARecordset.json new file mode 100644 index 000000000000..375bbf9c0cae --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchSOARecordset.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "@", + "recordType": "SOA", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SOA/@", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "@", + "type": "Microsoft.Network/dnsZones/SOA", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "zone1", + "SOARecord": { + "host": "ns1.contoso.com", + "email": "hostmaster.contoso.com", + "serialNumber": 1, + "refreshTime": 3600, + "retryTime": 300, + "expireTime": 2419200, + "minimumTTL": 300 + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchSRVRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchSRVRecordset.json new file mode 100644 index 000000000000..c02849c71c5f --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchSRVRecordset.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "SRV", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/SRV/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/SRV", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "SRVRecords": [ + { + "priority": 0, + "weight": 10, + "port": 80, + "target": "contoso.com" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchTXTRecordset.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchTXTRecordset.json new file mode 100644 index 000000000000..451e0d51bebd --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchTXTRecordset.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "relativeRecordSetName": "record1", + "recordType": "TXT", + "parameters": { + "properties": { + "metadata": { + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1/TXT/record1", + "etag": "00000000-0000-0000-0000-000000000000", + "name": "record1", + "type": "Microsoft.Network/dnsZones/TXT", + "properties": { + "metadata": { + "key2": "value2" + }, + "TTL": 3600, + "fqdn": "record1.zone1", + "TXTRecords": [ + { + "value": [ "string1", "string2" ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchZone.json b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchZone.json new file mode 100644 index 000000000000..e5e6a891074f --- /dev/null +++ b/specification/dns/resource-manager/Microsoft.Network/stable/2017-10-01/examples/PatchZone.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "zoneName": "zone1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dnsZones/zone1", + "etag": "00000000-0000-0000-0000-000000000000", + "location": "global", + "name": "zone1", + "type": "Microsoft.Network/dnsZones", + "properties": { + "maxNumberOfRecordSets": 5000, + "numberOfRecordSets": 2, + "nameServers": [ + "ns1-01.azure-dns.com", + "ns2-01.azure-dns.net", + "ns3-01.azure-dns.org", + "ns4-01.azure-dns.info" + ] + }, + "tags": { + "key2": "value2" + } + } + } + } +} \ No newline at end of file diff --git a/specification/dns/resource-manager/readme.md b/specification/dns/resource-manager/readme.md index 89151db23dc8..233e7609e9ac 100644 --- a/specification/dns/resource-manager/readme.md +++ b/specification/dns/resource-manager/readme.md @@ -26,7 +26,63 @@ These are the global settings for the DNS API. ``` yaml openapi-type: arm -tag: package-2017-09 +tag: package-2018-03-preview +``` + +### Tag: package-2018-03-preview + +These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-03-preview' +input-file: +- Microsoft.Network/preview/2018-03-01-preview/dns.json +directive: + - where: + - $.paths + suppress: + - OperationsAPIImplementation + - where: + - $.definitions.RecordSetProperties.properties.TTL + - $.definitions.RecordSetProperties.properties.ARecords + - $.definitions.RecordSetProperties.properties.AAAARecords + - $.definitions.RecordSetProperties.properties.MXRecords + - $.definitions.RecordSetProperties.properties.NSRecords + - $.definitions.RecordSetProperties.properties.PTRRecords + - $.definitions.RecordSetProperties.properties.SRVRecords + - $.definitions.RecordSetProperties.properties.TXTRecords + - $.definitions.RecordSetProperties.properties.CNAMERecord + - $.definitions.RecordSetProperties.properties.SOARecord + - $.definitions.RecordSetUpdateParameters.properties.RecordSet + suppress: + - DefinitionsPropertiesNamesCamelCase +``` + +### Tag: package-2017-10 + +These settings apply only when `--tag=package-2017-10` is specified on the command line. + +``` yaml $(tag) == 'package-2017-10' +input-file: +- Microsoft.Network/stable/2017-10-01/dns.json +directive: + - where: + - $.paths + suppress: + - OperationsAPIImplementation + - where: + - $.definitions.RecordSetProperties.properties.TTL + - $.definitions.RecordSetProperties.properties.ARecords + - $.definitions.RecordSetProperties.properties.AAAARecords + - $.definitions.RecordSetProperties.properties.MXRecords + - $.definitions.RecordSetProperties.properties.NSRecords + - $.definitions.RecordSetProperties.properties.PTRRecords + - $.definitions.RecordSetProperties.properties.SRVRecords + - $.definitions.RecordSetProperties.properties.TXTRecords + - $.definitions.RecordSetProperties.properties.CNAMERecord + - $.definitions.RecordSetProperties.properties.SOARecord + - $.definitions.RecordSetUpdateParameters.properties.RecordSet + suppress: + - DefinitionsPropertiesNamesCamelCase ``` ### Tag: package-2017-09 @@ -132,11 +188,31 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2018-03-preview + - tag: package-2017-10 - tag: package-2017-09 - tag: package-2016-04 - tag: package-2015-05-preview ``` +### Tag: package-2018-03-preview and go + +These settings apply only when `--tag=package-2018-03-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-03-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/dns/mgmt/2018-03-01-preview/dns +``` + +### Tag: package-2017-10 and go + +These settings apply only when `--tag=package-2017-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-10' && $(go) +output-folder: $(go-sdk-folder)/services/dns/mgmt/2017-10-01/dns +``` + ### Tag: package-2017-09 and go These settings apply only when `--tag=package-2017-09 --go` is specified on the command line. diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHubCluster.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHubCluster.json new file mode 100644 index 000000000000..afc018b1935f --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHubCluster.json @@ -0,0 +1,560 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubClusterManagementClient", + "description": "Azure Event Hubs Cluster client for managing Event Hubs Cluster 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}/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" + } + } + } + }, + "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 + } + }, + "/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" + } + } + } + } + } + }, + "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." + } + }, + "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." + }, + "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" + } + } + }, + "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." + } + } + } + } + }, + "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." + } + }, + "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." + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterGet.json new file mode 100644 index 000000000000..2a257820d9cb --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "clusterName": "testCluster", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/myResourceGroup/providers/Microsoft.EventHub/clusters/testCluster", + "name": "testCluster", + "type": "Microsoft.EventHub/Clusters", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Dedicated", + "capacity": 4 + }, + "properties": { + "created": "2017-05-24T23:23:27.877Z", + "updated": "2017-05-24T23:23:27.877Z", + "metricId": "SN6-008" + } + } + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterPatch.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterPatch.json new file mode 100644 index 000000000000..4539946ee5aa --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterPatch.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "clusterName": "testCluster", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "parameters":{ + "location": "South Central US", + "tags": { + "tag3": "value3", + "tag4": "value4" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/myResourceGroup/providers/Microsoft.EventHub/clusters/testCluster", + "name": "testCluster", + "type": "Microsoft.EventHub/Clusters", + "location": "South Central US", + "tags": { + "tag3": "value3", + "tag4": "value4" + }, + "sku": { + "name": "Dedicated", + "capacity": 4 + }, + "properties": { + "created": "2017-06-01T21:37:04.46Z", + "updated": "2017-06-01T21:37:53.413Z", + "metricId": "SN6-008" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/myResourceGroup/providers/Microsoft.EventHub/clusters/testCluster", + "name": "testCluster", + "type": "Microsoft.EventHub/Clusters", + "location": "South Central US", + "tags": { + "tag3": "value3", + "tag4": "value4" + }, + "sku": { + "name": "Dedicated", + "capacity": 4 + }, + "properties": { + "created": "2017-06-01T21:37:04.46Z", + "updated": "2017-06-01T21:37:53.413Z", + "metricId": "SN6-008" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterQuotaConfigurationGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterQuotaConfigurationGet.json new file mode 100644 index 000000000000..c5ea73433060 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterQuotaConfigurationGet.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "clusterName": "testCluster", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": { + "body": { + "settings": { + "namespaces-per-cluster-quota": "200", + "eventhub-per-namespace-quota": "20" + } + } + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterQuotaConfigurationPatch.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterQuotaConfigurationPatch.json new file mode 100644 index 000000000000..d214e8c44414 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClusterQuotaConfigurationPatch.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "clusterName": "testCluster", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "parameters": { + "settings": { + "namespaces-per-cluster-quota": "200", + "eventhub-per-namespace-quota": "20" + } + } + }, + "responses": { + "200": { + "body": { + "settings": { + "namespaces-per-cluster-quota": "200", + "eventhub-per-namespace-quota": "20" + } + } + }, + "201": { + "body": { + "settings": { + "namespaces-per-cluster-quota": "200", + "eventhub-per-namespace-quota": "20" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClustersListByResourceGroup.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClustersListByResourceGroup.json new file mode 100644 index 000000000000..c4a2b3c1c9a9 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClustersListByResourceGroup.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2017-04-01", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/Default-EventHub-SouthCentralUS/providers/Microsoft.EventHub/clusters/testCluster", + "name": "testCluster", + "type": "Microsoft.EventHub/Clusters", + "location": "South Central US", + "tags": {}, + "sku": { + "name": "Dedicated", + "capacity": 4 + }, + "properties": { + "created": "2016-09-13T23:17:25.24Z", + "updated": "2016-09-13T23:17:28.223Z", + "metricId": "SN6-008" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClustersListBySubscription.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClustersListBySubscription.json new file mode 100644 index 000000000000..b88ab50c0324 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Clusters/ClustersListBySubscription.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/Default-EventHub-SouthCentralUS/providers/Microsoft.EventHub/clusters/testCluster", + "name": "testCluster", + "type": "Microsoft.EventHub/Clusters", + "location": "South Central US", + "tags": {}, + "sku": { + "name": "Dedicated", + "capacity": 4 + }, + "properties": { + "created": "2016-09-13T23:17:25.24Z", + "updated": "2016-09-13T23:17:28.223Z", + "metricId": "SN6-008" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Operations_List.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..e7d456476fb0 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/Operations_List.json @@ -0,0 +1,256 @@ +{ + "parameters": { + "api-version": "2018-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.EventHub/checkNameAvailability/action", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Non Resource Operation", + "operation": "Get namespace availability.", + "description": "Checks availability of namespace under given subscription." + } + }, + { + "name": "Microsoft.EventHub/register/action", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub Resource Provider", + "operation": "Registers the EventHub Resource Provider", + "description": "Registers the subscription for the EventHub resource provider and enables the creation of EventHub resources" + } + }, + { + "name": "Microsoft.EventHub/namespaces/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace", + "operation": "Create Or Update Namespace ", + "description": "Create a Namespace Resource and Update its properties. Tags and status of the Namespace are the properties which can be updated." + } + }, + { + "name": "Microsoft.EventHub/namespaces/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace", + "operation": "Get Namespace Resource", + "description": "Get the list of Namespace Resource Description" + } + }, + { + "name": "Microsoft.EventHub/namespaces/Delete", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace", + "operation": "Delete Namespace", + "description": "Delete Namespace Resource" + } + }, + { + "name": "Microsoft.EventHub/namespaces/authorizationRules/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "AuthorizationRules", + "operation": "Get Namespace Authorization Rules", + "description": "Get the list of Namespaces Authorization Rules description." + } + }, + { + "name": "Microsoft.EventHub/namespaces/authorizationRules/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "AuthorizationRules", + "operation": "Create or Update Namespace Authorization Rules", + "description": "Create a Namespace level Authorization Rules and update its properties. The Authorization Rules Access Rights, the Primary and Secondary Keys can be updated." + } + }, + { + "name": "Microsoft.EventHub/namespaces/authorizationRules/delete", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "AuthorizationRules", + "operation": "Delete Namespace Authorization Rule", + "description": "Delete Namespace Authorization Rule. The Default Namespace Authorization Rule cannot be deleted. " + } + }, + { + "name": "Microsoft.EventHub/namespaces/authorizationRules/listkeys/action", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "AuthorizationRules", + "operation": "Get Namespace Listkeys", + "description": "Get the Connection String to the Namespace" + } + }, + { + "name": "Microsoft.EventHub/namespaces/authorizationRules/regenerateKeys/action", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "AuthorizationRules", + "operation": "Resource Regeneratekeys", + "description": "Regenerate the Primary or Secondary key to the Resource" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub", + "operation": "Create or Update EventHub", + "description": "Create or Update EventHub properties." + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub", + "operation": "Get EventHub", + "description": "Get list of EventHub Resource Descriptions" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/Delete", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub", + "operation": "Delete EventHub", + "description": "Operation to delete EventHub Resource" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub AuthorizationRules", + "operation": " Get EventHub Authorization Rules", + "description": " Get the list of EventHub Authorization Rules" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub AuthorizationRules", + "operation": "Create or Update EventHub Authorization Rule", + "description": "Create EventHub Authorization Rules and Update its properties. The Authorization Rules Access Rights, the Primary and Secondary Keys can be updated." + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules/delete", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub AuthorizationRules", + "operation": "Delete EventHub Authorization Rules", + "description": "Operation to delete EventHub Authorization Rules" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules/listkeys/action", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub AuthorizationRules", + "operation": "List EventHub keys", + "description": "Get the Connection String to EventHub" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules/regenerateKeys/action", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "EventHub AuthorizationRules", + "operation": "Resource Regeneratekeys", + "description": "Regenerate the Primary or Secondary key to the Resource" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventHubs/consumergroups/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "ConsumerGroup", + "operation": "Create or Update ConsumerGroup", + "description": "Create or Update ConsumerGroup properties." + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventHubs/consumergroups/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "ConsumerGroup", + "operation": "Get ConsumerGroup", + "description": "Get list of ConsumerGroup Resource Descriptions" + } + }, + { + "name": "Microsoft.EventHub/namespaces/eventHubs/consumergroups/Delete", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "ConsumerGroup", + "operation": "Delete ConsumerGroup", + "description": "Operation to delete ConsumerGroup Resource" + } + }, + { + "name": "Microsoft.EventHub/namespaces/metricDefinitions/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace metrics", + "operation": "Get Namespace metrics", + "description": "Get list of Namespace metrics Resource Descriptions" + } + }, + { + "name": "Microsoft.EventHub/namespaces/diagnosticSettings/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace diagnostic settings", + "operation": "Get Namespace diagnostic settings", + "description": "Get list of Namespace diagnostic settings Resource Descriptions" + } + }, + { + "name": "Microsoft.EventHub/namespaces/diagnosticSettings/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace diagnostic settings", + "operation": "Create or Update Namespace diagnostic settings", + "description": "Get list of Namespace diagnostic settings Resource Descriptions" + } + }, + { + "name": "Microsoft.EventHub/namespaces/logDefinitions/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Namespace logs", + "operation": "Get Namespace logs", + "description": "Get list of Namespace logs Resource Descriptions" + } + }, + { + "name": "Microsoft.EventHub/clusters/read", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Cluster", + "operation": "Get Event Hubs Clusters", + "description": "Get list of Event Hubs cluster resources." + } + }, + { + "name": "Microsoft.EventHub/clusters/write", + "display": { + "provider": "Microsoft Azure EventHub", + "resource": "Cluster", + "operation": "Update Cluster", + "description": "Update the properties of a cluster resource. Tags of the cluster are the properties which can be updated." + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json new file mode 100644 index 000000000000..6d6936076925 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json @@ -0,0 +1,1791 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2014-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": { + "/providers/Microsoft.EventHub/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "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" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/CheckNameAvailability": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CheckNameAvailability", + "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" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/CheckNamespaceAvailability": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CheckNameSpaceAvailability", + "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" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListBySubscription", + "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/NamespaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListByResourceGroup", + "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/NamespaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdate", + "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/NamespaceCreateOrUpdateParameters" + }, + "description": "Parameters for creating a namespace resource." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Namespace create request accepted.", + "schema": { + "$ref": "#/definitions/NamespaceResource" + } + }, + "200": { + "description": "Namespace successfuly created.", + "schema": { + "$ref": "#/definitions/NamespaceResource" + } + }, + "202": { + "description": "Namespace create or update request accepted." + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Delete", + "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 successfuly deleted." + }, + "202": { + "description": "Namespace delete request accepted." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Get", + "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/NamespaceResource" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/NamespaceResource" + } + } + } + }, + "patch": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Update", + "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/NamespaceUpdateParameter" + }, + "description": "Parameters for updating a namespace resource." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/NamespaceResource" + } + }, + "200": { + "description": "Namespace successfuly updated.", + "schema": { + "$ref": "#/definitions/NamespaceResource" + } + }, + "202": { + "description": "Namespace create or update request accepted." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListAuthorizationRules", + "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/SharedAccessAuthorizationRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + }, + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListPostAuthorizationRules", + "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/SharedAccessAuthorizationRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdateAuthorizationRule", + "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/SharedAccessAuthorizationRuleCreateOrUpdateParameters" + }, + "description": "The shared access AuthorizationRule." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace AuthorizationRule created", + "schema": { + "$ref": "#/definitions/SharedAccessAuthorizationRuleResource" + } + } + } + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_DeleteAuthorizationRule", + "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." + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_GetAuthorizationRule", + "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/SharedAccessAuthorizationRuleResource" + } + } + } + }, + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_PostAuthorizationRule", + "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/SharedAccessAuthorizationRulePostResource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs": { + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_ListAll", + "description": "Gets all the Event Hubs in a Namespace.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639493.aspx" + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/namespaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Event Hubs.", + "schema": { + "$ref": "#/definitions/EventHubListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}": { + "put": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_CreateOrUpdate", + "description": "Creates or updates a new Event Hub as a nested resource within a Namespace.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639497.aspx" + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/namespaceNameParameter" + }, + { + "$ref": "#/parameters/eventHubNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EventHubCreateOrUpdateParameters" + }, + "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/EventHubResource" + } + } + } + }, + "delete": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_Delete", + "description": "Deletes an Event Hub from the specified Namespace and resource group.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639496.aspx" + }, + "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." + } + } + }, + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_Get", + "description": "Gets an Event Hubs description for the specified Event Hub.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639501.aspx" + }, + "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/EventHubResource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules": { + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_ListAuthorizationRules", + "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/SharedAccessAuthorizationRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}": { + "put": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_CreateOrUpdateAuthorizationRule", + "description": "Creates or updates an AuthorizationRule for the specified Event Hub.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt706096.aspx" + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/namespaceNameParameter" + }, + { + "$ref": "#/parameters/eventHubNameParameter" + }, + { + "$ref": "#/parameters/authorizationRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SharedAccessAuthorizationRuleCreateOrUpdateParameters" + }, + "description": "The shared access AuthorizationRule." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub AuthorizationRule successfully created.", + "schema": { + "$ref": "#/definitions/SharedAccessAuthorizationRuleResource" + } + } + } + }, + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_GetAuthorizationRule", + "description": "Gets an AuthorizationRule for an Event Hub by rule name.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt706097.aspx" + }, + "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/SharedAccessAuthorizationRuleResource" + } + } + } + }, + "post": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_PostAuthorizationRule", + "description": "Gets an AuthorizationRule for an Event Hub by rule name.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt706097.aspx" + }, + "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/SharedAccessAuthorizationRulePostResource" + } + } + } + }, + "delete": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_DeleteAuthorizationRule", + "description": "Deletes an Event Hub AuthorizationRule.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt706100.aspx" + }, + "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." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/consumergroups/{consumerGroupName}": { + "put": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_CreateOrUpdate", + "description": "Creates or updates an Event Hubs consumer group as a nested resource within a Namespace.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639498.aspx" + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/namespaceNameParameter" + }, + { + "$ref": "#/parameters/eventHubNameParameter" + }, + { + "$ref": "#/parameters/consumerGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConsumerGroupCreateOrUpdateParameters" + }, + "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/ConsumerGroupResource" + } + } + } + }, + "delete": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_Delete", + "description": "Deletes a consumer group from the specified Event Hub and resource group.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639491.aspx" + }, + "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." + } + } + }, + "get": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_Get", + "description": "Gets a description for the specified consumer group.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639488.aspx" + }, + "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/ConsumerGroupResource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/consumergroups": { + "get": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_ListAll", + "description": "Gets all the consumer groups in a Namespace. An empty feed is returned if no consumer group exists in the Namespace.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt639503.aspx" + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/namespaceNameParameter" + }, + { + "$ref": "#/parameters/eventHubNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of consumer groups.", + "schema": { + "$ref": "#/definitions/ConsumerGroupListResult" + } + } + }, + "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": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A Event Hub 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: Microsoft.EventHub", + "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 + } + } + } + } + }, + "TrackedResource": { + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "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" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "description": "The Resource definition", + "x-ms-azure-resource": true + }, + "NamespaceCreateOrUpdateParameters": { + "properties": { + "location": { + "type": "string", + "description": "Namespace location." + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Namespace tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamespaceProperties" + } + }, + "required": [ + "location" + ], + "description": "Parameters supplied to the Create Or Update Namespace operation." + }, + "NamespaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NamespaceResource" + }, + "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." + }, + "NamespaceResource": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamespaceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "Single Namespace item in List or Get Operation" + }, + "NamespaceProperties": { + "properties": { + "status": { + "type": "string", + "description": "State of the Namespace.", + "enum": [ + "Unknown", + "Creating", + "Created", + "Activating", + "Enabling", + "Active", + "Disabling", + "Disabled", + "SoftDeleting", + "SoftDeleted", + "Removing", + "Removed", + "Failed" + ], + "x-ms-enum": { + "name": "NamespaceState", + "modelAsString": false + } + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the Namespace." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The time the Namespace was created." + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "description": "The time the Namespace was updated." + }, + "serviceBusEndpoint": { + "externalDocs": { + "url": "http://msdn.microsoft.com/en-us/library/windowsazure/jj873988.aspx" + }, + "type": "string", + "description": "Endpoint you can use to perform Service Bus operations." + }, + "metricId": { + "type": "string", + "readOnly": true, + "description": "Identifier for Azure Insights metrics" + }, + "enabled": { + "type": "boolean", + "description": "Specifies whether this instance is enabled." + } + }, + "description": "Properties of the Namespace supplied for create or update Namespace 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", + "Premium" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + }, + "capacity": { + "format": "int32", + "type": "integer", + "description": "The Event Hubs throughput units." + } + }, + "required": [ + "tier" + ], + "description": "SKU parameters supplied to the create Namespace operation" + }, + "SharedAccessAuthorizationRuleCreateOrUpdateParameters": { + "properties": { + "location": { + "type": "string", + "description": "Data center location." + }, + "name": { + "type": "string", + "description": "Name of the AuthorizationRule." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharedAccessAuthorizationRuleProperties" + } + }, + "description": "Parameters supplied to the Create Or Update Authorization Rules operation." + }, + "SharedAccessAuthorizationRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessAuthorizationRuleResource" + }, + "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." + }, + "SharedAccessAuthorizationRulePostResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharedAccessAuthorizationRulePostProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Single item in a List or Get AuthorizationRule operation" + }, + "SharedAccessAuthorizationRulePostProperties": { + "properties": { + "rights": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Manage", + "Send", + "Listen" + ], + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + }, + "description": "The rights associated with the rule." + }, + "primaryKey": { + "type": "string", + "description": "A base64-encoded 256-bit primary key for signing and validating the SAS token." + }, + "secondaryKey": { + "type": "string", + "description": "A base64-encoded 256-bit primary key for signing and validating the SAS token." + }, + "keyName": { + "type": "string", + "description": "A string that describes the Key Name of authorization rule." + }, + "claimType": { + "type": "string", + "description": "A string that describes Claim Type for authorization rule." + }, + "claimValue": { + "type": "string", + "description": "A string that describes Claim Value of authorization rule." + }, + "createdTime": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The time the namespace was created." + }, + "modifiedTime": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The time the namespace was updated." + } + }, + "required": [ + "rights" + ], + "description": "AuthorizationRule properties." + }, + "SharedAccessAuthorizationRuleResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharedAccessAuthorizationRuleProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Single item in a List or Get AuthorizationRule operation" + }, + "SharedAccessAuthorizationRuleProperties": { + "properties": { + "rights": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Manage", + "Send", + "Listen" + ], + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + }, + "description": "The rights associated with the rule." + } + }, + "required": [ + "rights" + ], + "description": "Properties supplied to create or update SharedAccessAuthorizationRule" + }, + "EventHubCreateOrUpdateParameters": { + "properties": { + "location": { + "type": "string", + "description": "Location of the resource." + }, + "type": { + "type": "string", + "description": "ARM type of the Namespace." + }, + "name": { + "type": "string", + "description": "Name of the Event Hub." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EventHubProperties" + } + }, + "required": [ + "location" + ], + "description": "Parameters supplied to the Create Or Update Event Hub operation." + }, + "EventHubProperties": { + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Exact time the Event Hub was created." + }, + "messageRetentionInDays": { + "format": "int64", + "type": "integer", + "description": "Number of days to retain the events for this Event Hub." + }, + "partitionCount": { + "format": "int64", + "type": "integer", + "description": "Number of partitions created for the Event Hub." + }, + "partitionIds": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "Current number of shards on the Event Hub." + }, + "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 + } + }, + "updatedAt": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The exact time the message was updated." + } + }, + "description": "Properties supplied to the Create Or Update Event Hub operation." + }, + "EventHubResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EventHubProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Single item in List or Get Event Hub operation" + }, + "EventHubListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EventHubResource" + }, + "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." + }, + "ConsumerGroupCreateOrUpdateParameters": { + "properties": { + "location": { + "type": "string", + "description": "Location of the resource." + }, + "type": { + "type": "string", + "description": "ARM type of the Namespace." + }, + "name": { + "type": "string", + "description": "Name of the consumer group." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConsumerGroupProperties" + } + }, + "required": [ + "location" + ], + "description": "Parameters supplied to the Create Or Update Consumer Group operation." + }, + "ConsumerGroupProperties": { + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Exact time the message was created." + }, + "eventHubPath": { + "type": "string", + "readOnly": true, + "description": "The path of the Event Hub." + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The exact time the message was updated." + }, + "userMetadata": { + "type": "string", + "description": "The user metadata." + } + }, + "description": "Properties supplied to the Create Or Update Consumer Group operation." + }, + "ConsumerGroupResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConsumerGroupProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Single item in List or Get Consumer group operation" + }, + "ConsumerGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConsumerGroupResource" + }, + "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": { + "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." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed info regarding the reason associated with the Namespace." + } + }, + "description": "The Result of the CheckNameAvailability operation" + }, + "NamespaceUpdateParameter": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the created Namespace" + } + }, + "description": "Parameters supplied to the Patch/update Namespace 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, + "maxLength": 50, + "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" + }, + "consumerGroupNameParameter": { + "name": "consumerGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The consumer group name" + } + } +} \ No newline at end of file diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json index 9313726f5201..36430aff1d23 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json @@ -874,6 +874,47 @@ } } }, + "post": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_PosttAuthorizationRule", + "x-ms-examples": { + "EventHubAutorizationRuleGet": { "$ref": "./examples/EHEventHubAutorizationRuleGet.json" } + }, + "description": "Gets an AuthorizationRule for an Event Hub by rule name.", + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/azure/mt706097.aspx" + }, + "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/SharedAccessAuthorizationRuleResource" + } + } + } + }, "delete": { "tags": [ "EventHubs" 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 index 4147aea27e52..cf67552aa685 100644 --- 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 @@ -392,7 +392,38 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/messagingplan": { + "get": { + "tags": [ + "MessagingPlan" + ], + "operationId": "MessagingPlan_Get", + "description": "Gets a description for the 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" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules": { "get": { "tags": [ "Namespaces" @@ -1763,6 +1794,43 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/sku/{sku}/regions": { + "get": { + "tags": [ + "Regions" + ], + "operationId": "Regions_ListBySku", + "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" + } + } } }, "definitions": { @@ -2425,6 +2493,88 @@ } }, "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." + }, + "MessagingPlanproperties": { + "properties": { + "sku": { + "format": "int32", + "type": "integer", + "description": "Sku type" + }, + "selectedEventHubUnit": { + "format": "int32", + "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", + "type": "integer", + "description": "revision number" + } + }, + "description": "Messaging Region" + }, + "MessagingPlan": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MessagingPlanproperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "Messaging" } }, "parameters": { @@ -2499,6 +2649,16 @@ "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." } } } \ No newline at end of file diff --git a/specification/eventhub/resource-manager/readme.md b/specification/eventhub/resource-manager/readme.md index 33eb3b93f677..8987d0cd7a6b 100644 --- a/specification/eventhub/resource-manager/readme.md +++ b/specification/eventhub/resource-manager/readme.md @@ -50,6 +50,26 @@ input-file: ``` +### Tag: package-2014-09 + +These settings apply only when `--tag=package-2014-09` is specified on the command line. + +``` yaml $(tag) == 'package-2014-09' +input-file: +- Microsoft.EventHub/stable/2014-09-01/EventHub.json +``` + + +### 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.EventHub/preview/2018-01-01-preview/EventHubCluster.json +``` + + --- # Code Generation @@ -95,6 +115,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.eventhub package-name: azure-mgmt-eventhub + package-version: 1.3.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' diff --git a/specification/graphrbac/data-plane/stable/1.6/graphrbac.json b/specification/graphrbac/data-plane/stable/1.6/graphrbac.json index b9006f6ef695..a8d0f0d5f03b 100644 --- a/specification/graphrbac/data-plane/stable/1.6/graphrbac.json +++ b/specification/graphrbac/data-plane/stable/1.6/graphrbac.json @@ -3000,7 +3000,8 @@ "in": "path", "required": true, "type": "string", - "description": "The tenant ID." + "description": "The tenant ID.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_Get.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_Get.json deleted file mode 100644 index 09db97420a75..000000000000 --- a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_Get.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "api-version": "2017-06-15-preview", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "myResourceGroup", - "hanaInstanceName": "myHanaInstance" - }, - "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": { - "hardwareType": "Cisco_UCS", - "hanaInstanceGenericProperties": { - "key_1": "value_1", - "key_2": "value_2", - "key_n": "value_n" - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_List.json deleted file mode 100644 index 39307ccf8d5a..000000000000 --- a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_List.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "api-version": "2017-06-15-preview", - "subscriptionId": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup1/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance1", - "name": "myHanaInstance1", - "type": "Microsoft.HanaOnAzure/hanaInstances", - "location": "westus", - "tags": { - "key": "value" - }, - "properties": { - "hardwareType": "Cisco_UCS", - "hanaInstanceGenericProperties": { - "key_1": "value_1", - "key_2": "value_2", - "key_n": "value_n" - } - } - }, - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup2/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance2", - "name": "myHanaInstance2", - "type": "Microsoft.HanaOnAzure/hanaInstances", - "location": "westus", - "tags": { - "key": "value" - }, - "properties": { - "hardwareType": "Cisco_UCS", - "hanaInstanceGenericProperties": { - "key_1": "value_1", - "key_2": "value_2", - "key_n": "value_n" - } - } - } - ] - } - } - } -} \ No newline at end of file diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_ListByResourceGroup.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_ListByResourceGroup.json deleted file mode 100644 index d20fba5a023e..000000000000 --- a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaInstances_ListByResourceGroup.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "parameters": { - "api-version": "2017-06-15-preview", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "myResourceGroup" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance1", - "name": "myHanaInstance1", - "type": "Microsoft.HanaOnAzure/hanaInstances", - "location": "westus", - "tags": { - "key": "value" - }, - "properties": { - "hardwareType": "Cisco_UCS", - "hanaInstanceGenericProperties": { - "key_1": "value_1", - "key_2": "value_2", - "key_n": "value_n" - } - } - }, - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance2", - "name": "myHanaInstance2", - "type": "Microsoft.HanaOnAzure/hanaInstances", - "location": "westus", - "tags": { - "key": "value" - }, - "properties": { - "hardwareType": "Cisco_UCS", - "hanaInstanceGenericProperties": { - "key_1": "value_1", - "key_2": "value_2", - "key_n": "value_n" - } - } - } - ] - } - } - } -} \ No newline at end of file diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaOperations_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaOperations_List.json deleted file mode 100644 index 9e641780564a..000000000000 --- a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/examples/HanaOperations_List.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parameters": { - "api-version": "2017-06-15-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" - } - } - ] - } - } - } -} \ No newline at end of file diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/hanaonazure.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/hanaonazure.json deleted file mode 100644 index c3e62c3a3240..000000000000 --- a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-06-15-preview/hanaonazure.json +++ /dev/null @@ -1,392 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "HanaManagementClient", - "description": "The SAP HANA on Azure Management Client.", - "version": "2017-06-15-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/hanaInstances": { - "get": { - "tags": [ - "HanaOnAzure" - ], - "operationId": "HanaInstances_List", - "summary": "Gets a list of SAP HANA instances in the specified subscription.", - "description": "Gets a list of SAP HANA instances in the specified subscription. The operations returns various properties of each SAP HANA on Azure instance.", - "x-ms-examples": { - "List all HANA instances in a subscription": { - "$ref": "./examples/HanaInstances_List.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/HanaInstancesListResult" - } - }, - "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/hanaInstances": { - "get": { - "tags": [ - "HanaOnAzure" - ], - "operationId": "HanaInstances_ListByResourceGroup", - "summary": "Gets a list of SAP HANA instances in the specified subscription and the resource group.", - "description": "Gets a list of SAP HANA instances in the specified subscription and the resource group. The operations returns various properties of each SAP HANA on Azure instance.", - "x-ms-examples": { - "List all HANA instances in a resource group": { - "$ref": "./examples/HanaInstances_ListByResourceGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/HanaInstancesListResult" - } - }, - "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/hanaInstances/{hanaInstanceName}": { - "get": { - "tags": [ - "HanaOnAzure" - ], - "operationId": "HanaInstances_Get", - "summary": "Gets properties of a SAP HANA instance.", - "description": "Gets properties of a SAP HANA instance for the specified subscription, resource group, and instance name.", - "x-ms-examples": { - "Get properties of a HANA instance": { - "$ref": "./examples/HanaInstances_Get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/HanaInstanceNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/HanaInstance" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "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": { - "readOnly": true, - "type": "string", - "description": "Resource location" - }, - "tags": { - "readOnly": true, - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Resource tags" - } - }, - "x-ms-azure-resource": true - }, - "HanaInstancesListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/HanaInstance" - }, - "description": "The list of SAP HANA on Azure instances." - }, - "nextLink": { - "type": "string", - "description": "The URL to get the next set of HANA instances." - } - }, - "description": "The response from the List HANA Instances operation." - }, - "HanaInstance": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/HanaInstanceProperties", - "description": "HANA instance properties" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "HANA instance info on Azure (ARM properties and HANA properties)" - }, - "HanaInstanceProperties": { - "properties": { - "hardwareType" : { - "readOnly": true, - "type": "string", - "enum": [ - "Cisco_UCS" - ], - "x-ms-enum": { - "name": "HanaHardwareTypeNamesEnum", - "modelAsString": true - }, - "description": "Name of the hardware type (vendor and/or thrie product name)" - }, - "hanaInstanceGenericProperties": { - "type": "object", - "description": "Properties of an SAP HANA on Azure instance. Currently an arbitrary JSON object because the RP is currently in active design and development." - } - }, - "description": "HANA instance properties" - }, - "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" - } - } - } - }, - "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" - }, - "HanaInstanceNameParameter": { - "name": "hanaInstanceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the SAP HANA on Azure instance.", - "x-ms-parameter-location": "method" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client API version." - } - } -} \ No newline at end of file diff --git a/specification/hanaonazure/resource-manager/readme.md b/specification/hanaonazure/resource-manager/readme.md index 4ab32c50b839..87124a0d34bc 100644 --- a/specification/hanaonazure/resource-manager/readme.md +++ b/specification/hanaonazure/resource-manager/readme.md @@ -42,16 +42,6 @@ input-file: - Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json ``` -### Tag: package-2017-06 - -These settings apply only when `--tag=package-2017-06` is specified on the command line. - -``` yaml $(tag) == 'package-2017-06' -input-file: -- Microsoft.HanaOnAzure/preview/2017-06-15-preview/hanaonazure.json -``` - - # Code Generation @@ -110,7 +100,6 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) && $(multiapi) batch: - - tag: package-2017-06 - tag: package-2017-11 ``` @@ -123,16 +112,6 @@ Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2017-06' && $(go) -output-folder: $(go-sdk-folder)/services/hanaonazure/mgmt/2017-06-15-preview/hanaonazure -``` - - ## Java These settings apply only when `--java` is specified on the command line. diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/checkNameAvailability.json new file mode 100644 index 000000000000..c4a2d329afb0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..2d4be2a3aa04 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version":"2018-01-22", + "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=" + } + } + } + } \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..4388f2679261 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certverify.json new file mode 100644 index 000000000000..1b64df894279 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..f9ecea33caa7 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_createOrUpdate.json @@ -0,0 +1,301 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "name": "iot-dps-cit-hub-1", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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 + } + } + }, + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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 + } + } + }, + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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/2018-01-22/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..b8d10bdd2b5d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_createconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_delete.json new file mode 100644 index 000000000000..94692d3ab547 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_delete.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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": {} + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..5931a1124f20 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..ac3d23fdc041 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_exportdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..39fef43ce712 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_get.json new file mode 100644 index 000000000000..64e378a32938 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_get.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..5c03915d956e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getcertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..b8d10bdd2b5d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getjob.json new file mode 100644 index 000000000000..572bedcfa89f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getkey.json new file mode 100644 index 000000000000..e9c85747001b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getskus.json new file mode 100644 index 000000000000..e26633d6328f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_importdevices.json new file mode 100644 index 000000000000..33ae3895660f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..1f45e0518359 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listbyrg.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..b8af4f55bb2a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listbysubscription.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2018-01-22", + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..e314cf68e320 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listcertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..b38011f2b7dc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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=" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listjobs.json new file mode 100644 index 000000000000..c2a5bbb9d73e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listkeys.json new file mode 100644 index 000000000000..54b74f823281 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_operations.json new file mode 100644 index 000000000000..484c2c9817ef --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2018-01-22" + }, + "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" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_patch.json new file mode 100644 index 000000000000..384de49b0949 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_patch.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "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": { + "operationsMonitoringProperties": { + "events": { + "None": "None", + "Connections": "None", + "DeviceTelemetry": "None", + "C2DCommands": "None", + "DeviceIdentityOperations": "None", + "FileUploadOperations": "None", + "Routes": "None" + } + }, + "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/" + }, + "operationsMonitoringEvents": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1-operationmonitoring", + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..80d90d83432b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_stats.json new file mode 100644 index 000000000000..778c4107a787 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/iothub.json new file mode 100644 index 000000000000..a2a2999804f5 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2018-01-22/iothub.json @@ -0,0 +1,2664 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-22", + "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 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}/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}/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 + } + } + }, + "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" + } + } + }, + "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" + } + } + }, + "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" + } + } + } + }, + "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 + } + } + }, + "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 + } + } + }, + "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" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "Thehub state 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 possible keys to this dictionary are events and operationsMonitoringEvents. Both of these keys have 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" + }, + "operationsMonitoringProperties": { + "$ref": "#/definitions/OperationsMonitoringProperties" + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ "None", "DeviceManagement" ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + } + } + }, + "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" ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ "Free", "Standard" ], + "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 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" + } + }, + "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" + } + } + }, + "OperationsMonitoringProperties": { + "description": "The operations monitoring properties for the IoT hub. The possible keys to the dictionary are Connections, DeviceTelemetry, C2DCommands, DeviceIdentityOperations, FileUploadOperations, Routes, D2CTwinOperations, C2DTwinOperations, TwinQueries, JobsOperations, DirectMethods.", + "type": "object", + "properties": { + "events": { + "type": "object", + "additionalProperties": { + "enum": [ "None", "Error", "Information", "Error, Information" ], + "description": "The operations monitoring level.", + "type": "string", + "x-ms-enum": { + "name": "OperationMonitoringLevel", + "modelAsString": true + } + } + } + } + }, + "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" + ] + }, + "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" + } + } + }, + "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": { + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "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, operationsMonitoringEvents, 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", + "connectionString" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "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, operationsMonitoringEvents, 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", + "connectionString" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "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, operationsMonitoringEvents, 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", + "connectionString" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "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, operationsMonitoringEvents, 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' and 'avrodeflate'. Default value is 'avro'.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString", + "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": ["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" + ] + }, + "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": { + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "$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" + } + } + } + } + }, + "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 + } + } + }, + "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": { + "$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" + } + } + }, + "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" + } + }, + "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" + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + } + }, + "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" + } + } +} diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index be8deca8947d..d171ad8f1be6 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the IotHub API. ``` yaml openapi-type: arm -tag: package-2017-07 +tag: package-2018-01 +``` + +### Tag: package-2018-01 + +These settings apply only when `--tag=package-2018-01` is specified on the command line. + +``` yaml $(tag) == 'package-2018-01' +input-file: +- Microsoft.Devices/stable/2018-01-22/iothub.json ``` ### Tag: package-2017-07 diff --git a/specification/keyvault/resource-manager/readme.md b/specification/keyvault/resource-manager/readme.md index 44fb68990846..8774fedb7480 100644 --- a/specification/keyvault/resource-manager/readme.md +++ b/specification/keyvault/resource-manager/readme.md @@ -1,5 +1,5 @@ # KeyVault - + > see https://aka.ms/autorest This is the AutoRest configuration file for KeyVault. @@ -7,7 +7,7 @@ This is the AutoRest configuration file for KeyVault. --- -## Getting Started +## Getting Started To build the SDK for KeyVault, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -21,7 +21,7 @@ To see additional help and options, run: -### Basic Information +### Basic Information These are the global settings for the KeyVault API. ``` yaml @@ -77,10 +77,11 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-libraries-for-java - repo: azure-sdk-for-go + - repo: azure-sdk-for-node ``` -## C# +## C# These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. diff --git a/specification/keyvault/resource-manager/readme.nodejs.md b/specification/keyvault/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..aa00801fb69c --- /dev/null +++ b/specification/keyvault/resource-manager/readme.nodejs.md @@ -0,0 +1,11 @@ +## 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-keyvault + output-folder: $(node-sdks-folder)/lib/services/keyVaultManagement/lib +``` diff --git a/specification/locationbasedservices/resource-manager/Microsoft.LocationBasedServices/preview/2017-01-01-preview/locationbasedservices.json b/specification/locationbasedservices/resource-manager/Microsoft.LocationBasedServices/preview/2017-01-01-preview/locationbasedservices.json index 0b26f5e6a99b..e0dd352a1d05 100644 --- a/specification/locationbasedservices/resource-manager/Microsoft.LocationBasedServices/preview/2017-01-01-preview/locationbasedservices.json +++ b/specification/locationbasedservices/resource-manager/Microsoft.LocationBasedServices/preview/2017-01-01-preview/locationbasedservices.json @@ -5,7 +5,7 @@ "description": "Resource Provider", "version": "2017-01-01-preview", "x-ms-code-generation-settings": { - "name": "Client" + "name": "LocationBasedServicesManagementClient" } }, "host": "management.azure.com", @@ -786,4 +786,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/preview/2017-08-31-preview/management.json b/specification/managementgroups/resource-manager/Microsoft.Management/preview/2017-08-31-preview/management.json index a70f5412f29c..6449accd6c1e 100644 --- a/specification/managementgroups/resource-manager/Microsoft.Management/preview/2017-08-31-preview/management.json +++ b/specification/managementgroups/resource-manager/Microsoft.Management/preview/2017-08-31-preview/management.json @@ -556,7 +556,8 @@ "required": true, "type": "string", "format": "uuid", - "description": "Management Group ID." + "description": "Management Group ID.", + "x-ms-parameter-location": "client" }, "ApiVersionParameter": { "name": "api-version", diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/preview/2018-01-01-preview/management.json b/specification/managementgroups/resource-manager/Microsoft.Management/preview/2018-01-01-preview/management.json index 792dd2934b30..86bfac102124 100644 --- a/specification/managementgroups/resource-manager/Microsoft.Management/preview/2018-01-01-preview/management.json +++ b/specification/managementgroups/resource-manager/Microsoft.Management/preview/2018-01-01-preview/management.json @@ -432,9 +432,6 @@ { "$ref": "#/parameters/GroupNameParameter" }, - { - "$ref": "#/parameters/EntityViewParameter" - }, { "$ref": "#/parameters/CacheControlHeader" } @@ -1202,7 +1199,8 @@ "description": "Management group creation parameters.", "schema": { "$ref": "#/definitions/CreateManagementGroupRequest" - } + }, + "x-ms-parameter-location": "client" }, "PatchGroupRequestParameter": { "name": "patchGroupRequest", @@ -1211,7 +1209,8 @@ "description": "Management group patch parameters.", "schema": { "$ref": "#/definitions/PatchManagementGroupRequest" - } + }, + "x-ms-parameter-location": "client" }, "FilterParameter": { "name": "$filter", @@ -1238,7 +1237,8 @@ "create", "delete" ], - "description": "The id of the operation result." + "description": "The id of the operation result.", + "x-ms-parameter-location": "client" }, "CheckNameAvailabilityParameter": { "name": "checkNameAvailabilityRequest", @@ -1247,14 +1247,16 @@ "description": "Management group name availability check parameters.", "schema": { "$ref": "#/definitions/CheckNameAvailabilityRequest" - } + }, + "x-ms-parameter-location": "client" }, "SkipTokenParameter": { "name": "$skiptoken", "in": "query", "required": false, "type": "string", - "description": "Page continuation token is only used if a previous operation returned a partial result. \nIf a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.\n" + "description": "Page continuation token is only used if a previous operation returned a partial result. \nIf a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.\n", + "x-ms-parameter-location": "client" }, "CacheControlHeader": { "name": "Cache-Control", diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json index 83ae6c3a3bd3..a8a57ca441d8 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json @@ -244,6 +244,10 @@ "type": "string", "description": "This is the partner id" }, + "partnerName": { + "type": "string", + "description": "This is the partner name" + }, "tenantId": { "type": "string", "description": "This is the tenant id." diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json index 024dad95d651..47c13c1c487c 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json @@ -13,6 +13,7 @@ "etag": 3, "properties": { "partnerId": "123456", + "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", "version": "3", diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json index 024dad95d651..47c13c1c487c 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json @@ -13,6 +13,7 @@ "etag": 3, "properties": { "partnerId": "123456", + "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", "version": "3", diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json index 024dad95d651..47c13c1c487c 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json @@ -13,6 +13,7 @@ "etag": 3, "properties": { "partnerId": "123456", + "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", "version": "3", diff --git a/specification/marketplaceordering/resource-manager/readme.md b/specification/marketplaceordering/resource-manager/readme.md index e232e182e55e..536d43de88b5 100644 --- a/specification/marketplaceordering/resource-manager/readme.md +++ b/specification/marketplaceordering/resource-manager/readme.md @@ -130,6 +130,24 @@ directive: transform: delete $.format ``` +## Node.js + +``` yaml $(nodejs) +directive: + - from: swagger-document + where: $.definitions.AgreementProperties.properties.retrieveDatetime + transform: delete $.format +``` + +## TypeScript + +``` yaml $(typescript) +directive: + - from: swagger-document + where: $.definitions.AgreementProperties.properties.retrieveDatetime + transform: delete $.format +``` + ## Go These settings apply only when `--go` is specified on the command line. diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/AssessedMachines_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/AssessedMachines_Get.json new file mode 100644 index 000000000000..37c439c81a15 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/AssessedMachines_Get.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01", + "assessedMachineName": "amansing_vm1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01/assessedMachines/amansing_vm1", + "name": "amansing_vm1", + "eTag": "\"010000ef-0000-0000-0000-59b7e53e0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments/assessedMachines", + "properties": { + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "discoveredTimestamp": "2017-09-12T13:17:23.5437337Z", + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-09-12T13:17:23.5437337Z", + "bootType": "BIOS", + "datacenterContainer": "10.184.81.34", + "datacenterManagementServer": "10.240.17.240", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "disks": { + "scsi0:0": { + "name": "scsi0:0", + "gigabytesProvisioned": 20, + "gigabytesConsumed": 0, + "megabytesPerSecondOfRead": 0, + "megabytesPerSecondOfWrite": 0, + "numberOfReadOperationsPerSecond": 0, + "numberOfWriteOperationsPerSecond": 0, + "monthlyStorageCost": 0, + "recommendedDiskSize": "Standard_S4", + "recommendedDiskType": "Standard", + "gigabytesForRecommendedDiskSize": 32, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ], + "megabytesPerSecondReceived": 0, + "megabytesPerSecondTransmitted": 0, + "monthlyBandwidthCosts": 0, + "netGigabytesTransmittedPerMonth": 0, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "recommendedSize": "Standard_A0", + "numberOfCoresForRecommendedSize": 1, + "megabytesOfMemoryForRecommendedSize": 786, + "monthlyComputeCostForRecommendedSize": 0, + "percentageCoresUtilization": 0.7752173913043479, + "percentageMemoryUtilization": 0.43666666666666665, + "suitability": "ConditionallySuitable", + "suitabilityExplanation": "WindowsServerVersionConditionallySupported" + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} + diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/AssessedMachines_ListByAssessment.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/AssessedMachines_ListByAssessment.json new file mode 100644 index 000000000000..9e865db42eb5 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/AssessedMachines_ListByAssessment.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01/assessedMachines/amansing_vm1", + "name": "amansing_vm1", + "eTag": "\"010000ef-0000-0000-0000-59b7e53e0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments/assessedMachines", + "properties": { + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "discoveredTimestamp": "2017-09-12T13:17:23.5437337Z", + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-09-12T13:17:23.5437337Z", + "bootType": "BIOS", + "datacenterContainer": "10.184.81.34", + "datacenterManagementServer": "10.240.17.240", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "disks": { + "scsi0:0": { + "name": "scsi0:0", + "gigabytesProvisioned": 20, + "gigabytesConsumed": 0, + "megabytesPerSecondOfRead": 0, + "megabytesPerSecondOfWrite": 0, + "numberOfReadOperationsPerSecond": 0, + "numberOfWriteOperationsPerSecond": 0, + "monthlyStorageCost": 0, + "recommendedDiskSize": "Standard_S4", + "recommendedDiskType": "Standard", + "gigabytesForRecommendedDiskSize": 32, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ], + "megabytesPerSecondReceived": 0, + "megabytesPerSecondTransmitted": 0, + "monthlyBandwidthCosts": 0, + "netGigabytesTransmittedPerMonth": 0, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "recommendedSize": "Standard_A0", + "numberOfCoresForRecommendedSize": 1, + "megabytesOfMemoryForRecommendedSize": 786, + "monthlyComputeCostForRecommendedSize": 0, + "percentageCoresUtilization": 0.7752173913043479, + "percentageMemoryUtilization": 0.43666666666666665, + "suitability": "ConditionallySuitable", + "suitabilityExplanation": "WindowsServerVersionConditionallySupported" + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01/assessedMachines/amansing_vm2", + "name": "amansing_vm2", + "eTag": "\"0000918f-0000-0000-0000-59c12ce90000\"", + "type": "Microsoft.Migrate/projects/groups/assessments/assessedMachines", + "properties": { + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "discoveredTimestamp": "2017-09-12T13:17:23.5437337Z", + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-09-12T13:17:23.5437337Z", + "bootType": "BIOS", + "datacenterContainer": "10.184.81.34", + "datacenterManagementServer": "10.240.17.240", + "datacenterMachineId": "vmWare_amansing_vm2", + "datacenterManagementServerId": "vmWare_unique_id", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm2", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "disks": { + "scsi0:0": { + "name": "scsi0:0", + "gigabytesProvisioned": 20, + "gigabytesConsumed": 0, + "megabytesPerSecondOfRead": 0, + "megabytesPerSecondOfWrite": 0, + "numberOfReadOperationsPerSecond": 0, + "numberOfWriteOperationsPerSecond": 0, + "monthlyStorageCost": 0, + "recommendedDiskSize": "Standard_S4", + "recommendedDiskType": "Standard", + "gigabytesForRecommendedDiskSize": 32, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ], + "megabytesPerSecondReceived": 0, + "megabytesPerSecondTransmitted": 0, + "monthlyBandwidthCosts": 0, + "netGigabytesTransmittedPerMonth": 0, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "recommendedSize": "Standard_A0", + "numberOfCoresForRecommendedSize": 1, + "megabytesOfMemoryForRecommendedSize": 786, + "monthlyComputeCostForRecommendedSize": 0, + "percentageCoresUtilization": 0.7752173913043479, + "percentageMemoryUtilization": 0.43666666666666665, + "suitability": "ConditionallySuitable", + "suitabilityExplanation": "WindowsServerVersionConditionallySupported" + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} + diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Create.json new file mode 100644 index 000000000000..0ba2e62b7e0d --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Create.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01", + "assessment": { + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-12T13:25:02.6983504Z", + "updatedTimestamp": "2017-09-12T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-12T13:25:02.6983504Z", + "updatedTimestamp": "2017-09-12T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + } + }, + "401": {}, + "400": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Delete.json new file mode 100644 index 000000000000..ed7fd0cfe56f --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "204": {}, + "200": {}, + "400": {}, + "401": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Get.json new file mode 100644 index 000000000000..2618bcf55658 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_Get.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-12T13:25:02.6983504Z", + "updatedTimestamp": "2017-09-12T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_GetReportDownloadUrl.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_GetReportDownloadUrl.json new file mode 100644 index 000000000000..0bc79e04720c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_GetReportDownloadUrl.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "200": { + "body": { + "assessmentReportUrl": "link-to-download-assessment-report", + "expirationTime": "2017-09-12T13:17:23.5437337Z" + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_ListByGroup.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_ListByGroup.json new file mode 100644 index 000000000000..5f28a49907a0 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_ListByGroup.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-12T13:25:02.6983504Z", + "updatedTimestamp": "2017-09-12T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02", + "name": "assessment02", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1, + "percentile": "Percentile99", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 20, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-15T09:59:21.5319568Z", + "updatedTimestamp": "2017-09-15T09:59:21.5319568Z", + "monthlyComputeCost": 50, + "monthlyBandwidthCost": 10, + "monthlyStorageCost": 30, + "status": "Completed", + "numberOfMachines": 4 + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_ListByProject.json new file mode 100644 index 000000000000..4bb1db79dae9 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Assessments_ListByProject.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-12T13:25:02.6983504Z", + "updatedTimestamp": "2017-09-12T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02", + "name": "assessment02", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1, + "percentile": "Percentile99", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 20, + "pricesTimestamp": "2017-09-12T13:25:02.6983504Z", + "createdTimestamp": "2017-09-15T09:59:21.5319568Z", + "updatedTimestamp": "2017-09-15T09:59:21.5319568Z", + "monthlyComputeCost": 50, + "monthlyBandwidthCost": 10, + "monthlyStorageCost": 30, + "status": "Completed", + "numberOfMachines": 4 + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Create.json new file mode 100644 index 000000000000..345130b21db5 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Create.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "group": { + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm3" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm3" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-10-30T09:13:02.7580235Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm3" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-10-30T09:13:02.7580235Z" + } + } + }, + "401": {}, + "400": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Delete.json new file mode 100644 index 000000000000..293e14f22443 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01" + }, + "responses": { + "204": {}, + "200": {}, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Get.json new file mode 100644 index 000000000000..2a5ae13fe83e --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-10-30T09:13:02.7580235Z" + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_ListByProject.json new file mode 100644 index 000000000000..dd31b211bde6 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Groups_ListByProject.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2017-09-12T13:17:23.5437337Z", + "updatedTimestamp": "2017-10-30T09:13:02.7580235Z" + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group02", + "name": "group02", + "eTag": "\"0000470d-0000-0000-0000-59b90d820000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group02/assessments/assessment03" + ], + "createdTimestamp": "2017-09-13T10:50:43.4356428Z", + "updatedTimestamp": "2017-09-13T10:50:43.4356428Z" + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Machines_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Machines_Get.json new file mode 100644 index 000000000000..e72488f849d8 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Machines_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "machineName": "amansing_vm1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/machines/amansing_vm1", + "name": "amansing_vm1", + "type": "Microsoft.Migrate/projects/machines", + "eTag": "\"b701c63a-0000-0000-0000-59c12fe60000\"", + "properties": { + "bootType": "BIOS", + "datacenterContainer": "vmWareFolder", + "datacenterManagementServer": "123.123.123.123", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "createdTimestamp": "2017-09-09T07:44:44.5677283Z", + "discoveredTimestamp": "2017-09-09T07:44:44.5677283Z", + "disks": { + "scsi0:0": { + "gigabytesAllocated": 20, + "gigabytesConsumed": 0 + } + }, + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ] + } + }, + "updatedTimestamp": "2017-09-09T10:11:25.7585427Z" + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Machines_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Machines_ListByProject.json new file mode 100644 index 000000000000..f520e77f187a --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Machines_ListByProject.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/machines/amansing_vm1", + "name": "amansing_vm1", + "type": "Microsoft.Migrate/projects/machines", + "eTag": "\"b701c63a-0000-0000-0000-59c12fe60000\"", + "properties": { + "bootType": "BIOS", + "datacenterContainer": "vmWareFolder", + "datacenterManagementServer": "123.123.123.123", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "createdTimestamp": "2017-09-09T07:44:44.5677283Z", + "discoveredTimestamp": "2017-09-09T07:44:44.5677283Z", + "disks": { + "scsi0:0": { + "gigabytesAllocated": 20, + "gigabytesConsumed": 0 + } + }, + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ] + } + }, + "updatedTimestamp": "2017-09-09T10:11:25.7585427Z" + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "name": "amansing_vm2", + "type": "Microsoft.Migrate/projects/machines", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "properties": { + "bootType": "BIOS", + "datacenterContainer": "vmWareFolder", + "datacenterManagementServer": "123.123.123.123", + "datacenterMachineId": "vmWare_amansing_vm2", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm2", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "createdTimestamp": "2017-09-09T07:44:44.5677283Z", + "updatedTimestamp": "2017-09-09T10:11:25.7585427Z", + "discoveredTimestamp": "2017-09-09T07:44:44.5677283Z", + "disks": { + "scsi0:0": { + "gigabytesAllocated": 20, + "gigabytesConsumed": 0 + } + }, + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01" + ], + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ] + } + } + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Operations_List.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Operations_List.json new file mode 100644 index 000000000000..478779a306b1 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Operations_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Read", + "display": { + "provider": "Microsoft.Migrate", + "resource": "Microsoft.Migrate/projects", + "operation": "Read", + "description": "Reads a project" + }, + "origin": "user,system" + }, + { + "name": "Write", + "display": { + "provider": "Microsoft.Migrate", + "resource": "Microsoft.Migrate/projects", + "operation": "Write", + "description": "Creates or updates a project" + }, + "origin": "user,system" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Create.json new file mode 100644 index 000000000000..c3cd91877db0 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Create.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "project": { + "properties": { + "customerWorkspaceId": "url-to-customers-service-map" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "responses": { + "201": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2017-09-12T13:11:30.8808917Z", + "updatedTimestamp": "2017-09-12T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "200": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2017-09-12T13:11:30.8808917Z", + "updatedTimestamp": "2017-09-12T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "400": {}, + "401": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Delete.json new file mode 100644 index 000000000000..6a6bdfa7be5f --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": {}, + "204": {}, + "400": {}, + "401": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Get.json new file mode 100644 index 000000000000..d35eb607d4eb --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2017-09-12T13:11:30.8808917Z", + "updatedTimestamp": "2017-09-12T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_GetKeys.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_GetKeys.json new file mode 100644 index 000000000000..b40446241120 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_GetKeys.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "workspaceId": "migrationProjectId", + "workspaceKey": "migrationProjectKey" + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_List.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_List.json new file mode 100644 index 000000000000..c0269831cd36 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_List.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2017-09-12T13:11:30.8808917Z", + "updatedTimestamp": "2017-09-12T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + }, + { + "properties": { + "numberOfGroups": 4, + "numberOfMachines": 6, + "numberOfAssessments": 4, + "createdTimestamp": "2017-09-13T10:50:05.3206647Z", + "updatedTimestamp": "2017-09-13T10:50:05.3236679Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project02", + "name": "project02", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-1111-0000-59c12ff02222\"", + "location": "West Us", + "tags": {} + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Update.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Update.json new file mode 100644 index 000000000000..253e944dabce --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/examples/Projects_Update.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2017-11-11-preview", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "project": { + "properties": { + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "", + "location": "West Us", + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2017-09-12T13:11:30.8808917Z", + "updatedTimestamp": "2017-09-12T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "400": {}, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/migrate.json b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/migrate.json new file mode 100644 index 000000000000..4ea93f87f2b4 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2017-11-11-preview/migrate.json @@ -0,0 +1,2745 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-11-11-preview", + "title": "Azure Migrate", + "description": "Move your workloads to Azure.", + "contact": { + "name": "Microsoft", + "email": "azuremigrate@microsoft.com" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "description": "Azure Subscription Id in which project was created.", + "type": "string", + "in": "path", + "required": true + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "Name of the Azure Resource Group that project is part of.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "projectName": { + "name": "projectName", + "description": "Name of the Azure Migrate project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "machineName": { + "name": "machineName", + "description": "Unique name of a machine in private datacenter.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "assessedMachineName": { + "name": "assessedMachineName", + "description": "Unique name of an assessed machine evaluated as part of an assessment.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "groupName": { + "name": "groupName", + "description": "Unique name of a group within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "assessmentName": { + "name": "assessmentName", + "description": "Unique name of an assessment within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "api-version": { + "name": "api-version", + "description": "Standard request header. Used by service to identify API version used by client.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "2017-11-11-preview" + ] + }, + "acceptLanguage": { + "description": "Standard request header. Used by service to respond to client in appropriate language.", + "name": "Accept-Language", + "type": "string", + "in": "header", + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "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" + ] + } + ], + "definitions": { + "Project": { + "type": "object", + "x-ms-azure-resource": true, + "description": "Azure Migrate Project.", + "properties": { + "id": { + "type": "string", + "description": "Path reference to this project /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the project.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects].", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "location": { + "type": "string", + "description": "Azure location in which project is created." + }, + "tags": { + "type": "object", + "description": "Tags provided by Azure Tagging service." + }, + "properties": { + "description": "Properties of the project.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectProperties" + } + } + }, + "ProjectProperties": { + "type": "object", + "description": "Properties of a project.", + "properties": { + "numberOfMachines": { + "type": "integer", + "format": "int32", + "description": "Number of machines in the project.", + "readOnly": true + }, + "numberOfGroups": { + "type": "integer", + "format": "int32", + "description": "Number of groups created in the project.", + "readOnly": true + }, + "numberOfAssessments": { + "type": "integer", + "format": "int32", + "description": "Number of assessments created in the project.", + "readOnly": true + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "discoveryStatus": { + "type": "string", + "enum": [ + "Unknown", + "NotStarted", + "InProgress", + "Completed" + ], + "readOnly": true, + "description": "Reports whether project is under discovery.", + "x-ms-enum": { + "name": "DiscoveryStatus", + "modelAsString": true + } + }, + "customerWorkspaceId": { + "type": "string", + "description": "ARM ID of the Service Map workspace created by user." + }, + "provisioningState": { + "type": "string", + "enum": [ + "Accepted", + "Creating", + "Deleting", + "Failed", + "Moving", + "Succeeded" + ], + "description": "Provisioning state of the project.", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "Group": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A group created in a Migration project.", + "required": [ + "properties" + ], + "properties": { + "id": { + "description": "Path reference to this group. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the group.", + "type": "string", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/groups].", + "readOnly": true + }, + "properties": { + "description": "Properties of the group.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupProperties" + } + } + }, + "GroupProperties": { + "type": "object", + "description": "Properties of group resource.", + "required": [ + "machines" + ], + "properties": { + "machines": { + "type": "array", + "description": "List of machine names that are part of this group.", + "items": { + "type": "string", + "description": "Reference to a machine. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines/{machineName}" + } + }, + "assessments": { + "type": "array", + "description": "List of References to Assessments created on this group.", + "readOnly": true, + "items": { + "type": "string", + "description": "Reference to an Assessment. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}", + "readOnly": true + } + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + } + } + }, + "Assessment": { + "type": "object", + "x-ms-azure-resource": true, + "description": "An assessment created for a group in the Migration project.", + "required": [ + "properties" + ], + "properties": { + "id": { + "type": "string", + "description": "Path reference to this assessment. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessment/{assessmentName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Unique name of an assessment.", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/groups/assessments].", + "readOnly": true + }, + "properties": { + "description": "Properties of the assessment.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AssessmentProperties" + } + } + }, + "AssessmentProperties": { + "type": "object", + "description": "Properties of an assessment.", + "required": [ + "stage", + "azureOfferCode", + "timeRange", + "percentile", + "azureLocation", + "azureStorageRedundancy", + "scalingFactor", + "azurePricingTier", + "currency", + "azureHybridUseBenefit", + "discountPercentage" + ], + "properties": { + "azureLocation": { + "type": "string", + "enum": [ + "Unknown", + "EastAsia", + "SoutheastAsia", + "AustraliaEast", + "AustraliaSoutheast", + "BrazilSouth", + "CanadaCentral", + "CanadaEast", + "WestEurope", + "NorthEurope", + "CentralIndia", + "SouthIndia", + "WestIndia", + "JapanEast", + "JapanWest", + "KoreaCentral", + "KoreaSouth", + "UkWest", + "UkSouth", + "NorthCentralUs", + "EastUs", + "WestUs2", + "SouthCentralUs", + "CentralUs", + "EastUs2", + "WestUs", + "WestCentralUs" + ], + "description": "Target Azure location for which the machines should be assessed. These enums are the same as used by Compute API.", + "x-ms-enum": { + "name": "AzureLocation", + "modelAsString": true + } + }, + "azureOfferCode": { + "type": "string", + "enum": [ + "Unknown", + "MSAZR0003P", + "MSAZR0044P", + "MSAZR0059P", + "MSAZR0060P", + "MSAZR0062P", + "MSAZR0063P", + "MSAZR0064P", + "MSAZR0029P", + "MSAZR0022P", + "MSAZR0023P", + "MSAZR0148P", + "MSAZR0025P", + "MSAZR0036P", + "MSAZR0120P", + "MSAZR0121P", + "MSAZR0122P", + "MSAZR0123P", + "MSAZR0124P", + "MSAZR0125P", + "MSAZR0126P", + "MSAZR0127P", + "MSAZR0128P", + "MSAZR0129P", + "MSAZR0130P", + "MSAZR0111P", + "MSAZR0144P", + "MSAZR0149P" + ], + "description": "Offer code according to which cost estimation is done.", + "x-ms-enum": { + "name": "AzureOfferCode", + "modelAsString": true + } + }, + "azurePricingTier": { + "type": "string", + "enum": [ + "Standard", + "Basic" + ], + "description": "Pricing tier for Size evaluation.", + "x-ms-enum": { + "name": "AzurePricingTier", + "modelAsString": true + } + }, + "azureStorageRedundancy": { + "type": "string", + "enum": [ + "Unknown", + "LocallyRedundant", + "ZoneRedundant", + "GeoRedundant", + "ReadAccessGeoRedundant" + ], + "description": "Storage Redundancy type offered by Azure.", + "x-ms-enum": { + "name": "AzureStorageRedundancy", + "modelAsString": true + } + }, + "scalingFactor": { + "type": "number", + "format": "double", + "description": "Scaling factor used over utilization data to add a performance buffer for new machines to be created in Azure. Min Value = 1.0, Max value = 1.9, Default = 1.3." + }, + "percentile": { + "type": "string", + "enum": [ + "Percentile50", + "Percentile90", + "Percentile95", + "Percentile99" + ], + "description": "Percentile of performance data used to recommend Azure size.", + "x-ms-enum": { + "name": "Percentile", + "modelAsString": true + } + }, + "timeRange": { + "type": "string", + "enum": [ + "Day", + "Week", + "Month" + ], + "description": "Time range of performance data used to recommend a size.", + "x-ms-enum": { + "name": "TimeRange", + "modelAsString": true + } + }, + "stage": { + "type": "string", + "enum": [ + "InProgress", + "UnderReview", + "Approved" + ], + "description": "User configurable setting that describes the status of the assessment.", + "x-ms-enum": { + "name": "AssessmentStage", + "modelAsString": true + } + }, + "currency": { + "type": "string", + "enum": [ + "Unknown", + "USD", + "DKK", + "CAD", + "IDR", + "JPY", + "KRW", + "NZD", + "NOK", + "RUB", + "SAR", + "ZAR", + "SEK", + "TRY", + "GBP", + "MXN", + "MYR", + "INR", + "HKD", + "BRL", + "TWD", + "EUR", + "CHF", + "ARS", + "AUD" + ], + "description": "Currency to report prices in.", + "x-ms-enum": { + "name": "Currency", + "modelAsString": true + } + }, + "azureHybridUseBenefit": { + "type": "string", + "enum": [ + "Unknown", + "Yes", + "No" + ], + "description": "AHUB discount on windows virtual machines.", + "x-ms-enum": { + "name": "AzureHybridUseBenefit", + "modelAsString": true + } + }, + "discountPercentage": { + "type": "number", + "format": "double", + "description": "Custom discount percentage to be applied on final costs. Can be in the range [0, 100]." + }, + "pricesTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when the Azure Prices were queried. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "monthlyComputeCost": { + "type": "number", + "format": "double", + "description": "Monthly compute cost estimate for the machines that are part of this assessment as a group, for a 31-day month.", + "readOnly": true + }, + "monthlyBandwidthCost": { + "type": "number", + "format": "double", + "description": "Monthly network cost estimate for the machines that are part of this assessment as a group, for a 31-day month.", + "readOnly": true + }, + "monthlyStorageCost": { + "type": "number", + "format": "double", + "description": "Monthly storage cost estimate for the machines that are part of this assessment as a group, for a 31-day month.", + "readOnly": true + }, + "status": { + "type": "string", + "enum": [ + "Created", + "Updated", + "Running", + "Completed", + "Invalid" + ], + "description": "Wheter the assessment has been created and is valid.", + "readOnly": true, + "x-ms-enum": { + "name": "AssessmentStatus", + "modelAsString": true + } + }, + "numberOfMachines": { + "type": "integer", + "format": "int32", + "description": "Number of assessed machines part of this assessment.", + "readOnly": true + } + } + }, + "Disk": { + "type": "object", + "description": "A disk discovered on a machine.", + "properties": { + "gigabytesAllocated": { + "type": "number", + "format": "double", + "description": "Gigabytes of storage provisioned for this disk.", + "readOnly": true + }, + "gigabytesConsumed": { + "format": "double", + "type": "number", + "description": "Gigabytes of storage consumed by this disk.", + "readOnly": true + } + } + }, + "NetworkAdapter": { + "type": "object", + "description": "A network adapter discovered on a machine.", + "properties": { + "macAddress": { + "type": "string", + "description": "MAC Address of the network adapter.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "description": "List of IP Addresses on the network adapter.", + "readOnly": true, + "items": { + "type": "string", + "description": "IP Address of the network adapter.", + "readOnly": true + } + } + } + }, + "Machine": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A machine in a migration project.", + "properties": { + "id": { + "type": "string", + "description": "Path reference to this machine. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines/{machineName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the machine. It is a GUID which is unique identifier of machine in private data center. For user-readable name, we have a displayName property on this machine.", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/machines].", + "readOnly": true + }, + "properties": { + "description": "Properties of the machine.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineProperties" + } + } + }, + "MachineProperties": { + "type": "object", + "description": "Properties of a machine.", + "properties": { + "bootType": { + "type": "string", + "description": "Boot type of the machine.", + "enum": [ + "Unknown", + "EFI", + "BIOS" + ], + "readOnly": true, + "x-ms-enum": { + "name": "MachineBootType", + "modelAsString": true + } + }, + "datacenterContainer": { + "type": "string", + "description": "Container defined in the management solution that this machine is part of in the datacenter.", + "readOnly": true + }, + "datacenterManagementServer": { + "type": "string", + "description": "Name of the server hosting the datacenter management solution.", + "readOnly": true + }, + "datacenterMachineId": { + "type": "string", + "description": "ID of the machine as tracked by the datacenter management solution.", + "readOnly": true + }, + "datacenterManagementServerId": { + "type": "string", + "description": "ID of the server hosting the datacenter management solution.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the machine", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "User readable name of the machine as defined by the user in their private datacenter.", + "readOnly": true + }, + "megabytesOfMemory": { + "type": "number", + "description": "Memory in Megabytes.", + "readOnly": true + }, + "numberOfCores": { + "type": "integer", + "description": "Processor count.", + "readOnly": true + }, + "operatingSystem": { + "type": "string", + "description": "Operating System of the machine.", + "readOnly": true + }, + "groups": { + "type": "array", + "description": "List of references to the groups that the machine is member of.", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true, + "description": "Reference to a group that this machine is member of. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}" + } + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "discoveredTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was discovered by Azure Migrate agent. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "disks": { + "type": "object", + "description": "Dictionary of disks attached to the machine. Key is ID of disk. Value is a disk object", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/Disk" + } + }, + "networkAdapters": { + "type": "object", + "description": "Dictionary of network adapters attached to the machine. Key is ID of network adapter. Value is a network adapter object", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/NetworkAdapter" + } + } + } + }, + "AssessedDisk": { + "type": "object", + "description": "A disk assessed for an assessment.", + "properties": { + "name": { + "type": "string", + "description": "Name of the assessed disk.", + "readOnly": true + }, + "gigabytesProvisioned": { + "type": "number", + "format": "double", + "description": "Gigabytes of storage provisioned for this disk.", + "readOnly": true + }, + "gigabytesConsumed": { + "type": "number", + "format": "double", + "description": "Gigabytes of storage consumed by this disk.", + "readOnly": true + }, + "megabytesPerSecondOfRead": { + "type": "number", + "format": "double", + "description": "Disk throughput in MegaBytes per second.", + "readOnly": true + }, + "megabytesPerSecondOfWrite": { + "type": "number", + "format": "double", + "description": "Disk throughput in MegaBytes per second.", + "readOnly": true + }, + "numberOfReadOperationsPerSecond": { + "type": "number", + "format": "double", + "description": "Number of read operations per second for the disk.", + "readOnly": true + }, + "numberOfWriteOperationsPerSecond": { + "type": "number", + "format": "double", + "description": "Number of read and write operations per second for the disk.", + "readOnly": true + }, + "monthlyStorageCost": { + "type": "number", + "format": "double", + "description": "Estimated aggregate storage cost for a 31-day month for this disk.", + "readOnly": true + }, + "recommendedDiskType": { + "type": "string", + "enum": [ + "Unknown", + "Standard", + "Premium" + ], + "description": "Storage type selected for this disk.", + "x-ms-enum": { + "name": "AzureDiskType", + "modelAsString": true + }, + "readOnly": true + }, + "recommendedDiskSize": { + "type": "string", + "enum": [ + "Unknown", + "Standard_S4", + "Standard_S6", + "Standard_S10", + "Standard_S20", + "Standard_S30", + "Standard_S40", + "Standard_S50", + "Premium_P4", + "Premium_P6", + "Premium_P10", + "Premium_P20", + "Premium_P30", + "Premium_P40", + "Premium_P50" + ], + "description": "Recommended Azure size for the disk, given utilization data and preferences set on Assessment.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureDiskSize", + "modelAsString": true + } + }, + "gigabytesForRecommendedDiskSize": { + "type": "integer", + "format": "int32", + "description": "Gigabytes of storage provided by the recommended Azure disk size.", + "readOnly": true + }, + "suitability": { + "type": "string", + "enum": [ + "Unknown", + "NotSuitable", + "Suitable", + "ConditionallySuitable" + ], + "description": "Whether this disk is suitable for Azure.", + "readOnly": true, + "x-ms-enum": { + "name": "CloudSuitability", + "modelAsString": true + } + }, + "suitabilityExplanation": { + "type": "string", + "enum": [ + "Unknown", + "NotApplicable", + "DiskSizeGreaterThanSupported", + "NoSuitableDiskSizeForIops", + "NoSuitableDiskSizeForThroughput", + "NoDiskSizeFoundInSelectedLocation", + "NoDiskSizeFoundForSelectedRedundancy", + "InternalErrorOccurredForDiskEvaluation" + ], + "description": "If disk is suitable, this explains the reasons and mitigation steps.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureDiskSuitabilityExplanation", + "modelAsString": true + } + } + } + }, + "AssessedNetworkAdapter": { + "type": "object", + "description": "A network adapter assessed for an assessment.", + "properties": { + "macAddress": { + "type": "string", + "description": "MAC Address of the network adapter.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "description": "List of IP Addresses on the network adapter.", + "readOnly": true, + "items": { + "type": "string", + "description": "IP Address of the network adapter.", + "readOnly": true + } + }, + "monthlyBandwidthCosts": { + "type": "number", + "format": "double", + "description": "Monthly cost estimate for network bandwidth used by this network adapter.", + "readOnly": true + }, + "megabytesPerSecondTransmitted": { + "type": "number", + "format": "double", + "description": "Adapter throughput for outgoing traffic in MegaBytes per second.", + "readOnly": true + }, + "megabytesPerSecondReceived": { + "type": "number", + "format": "double", + "description": "Adapter throughput for incoming traffic in MegaBytes per second.", + "readOnly": true + }, + "netGigabytesTransmittedPerMonth": { + "type": "number", + "format": "double", + "description": "Gigabytes transmitted through this adapter each month." + }, + "suitability": { + "type": "string", + "enum": [ + "Unknown", + "NotSuitable", + "Suitable", + "ConditionallySuitable" + ], + "description": "Whether this adapter is suitable for Azure.", + "readOnly": true, + "x-ms-enum": { + "name": "CloudSuitability", + "modelAsString": true + } + }, + "suitabilityExplanation": { + "type": "string", + "enum": [ + "Unknown", + "NotApplicable", + "InternalErrorOccured" + ], + "description": "If network adapter is suitable, this explains the reasons and mitigation steps.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureNetworkAdapterSuitabilityExplanation", + "modelAsString": true + } + } + } + }, + "AssessedMachine": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A machine evaluated as part of an assessment.", + "properties": { + "id": { + "type": "string", + "description": "Path reference to this assessed machine. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the machine.", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/groups/assessments/assessedMachines].", + "readOnly": true + }, + "properties": { + "description": "Properties of an assessed machine.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AssessedMachineProperties" + } + } + }, + "AssessedMachineProperties": { + "type": "object", + "description": "Properties of an assessed machine.", + "properties": { + "groups": { + "type": "array", + "description": "List of references to the groups that the machine is member of.", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true, + "description": "Reference to a group that this machine is member of. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}" + } + }, + "discoveredTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was discovered by Azure Migrate agent. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "bootType": { + "type": "string", + "description": "Boot type of the machine.", + "enum": [ + "Unknown", + "EFI", + "BIOS" + ], + "readOnly": true, + "x-ms-enum": { + "name": "MachineBootType", + "modelAsString": true + } + }, + "datacenterContainer": { + "type": "string", + "description": "Container defined in the management solution that this machine is part of in the datacenter.", + "readOnly": true + }, + "datacenterManagementServer": { + "type": "string", + "description": "Name of the server hosting the datacenter management solution.", + "readOnly": true + }, + "datacenterMachineId": { + "type": "string", + "description": "ID of the machine as tracked by the datacenter management solution.", + "readOnly": true + }, + "datacenterManagementServerId": { + "type": "string", + "description": "ID of the server hosting the datacenter management solution.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the machine", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "User readable name of the machine as defined by the user in their private datacenter.", + "readOnly": true + }, + "megabytesOfMemory": { + "type": "number", + "format": "double", + "description": "Memory in Megabytes.", + "readOnly": true + }, + "numberOfCores": { + "type": "integer", + "format": "int32", + "description": "Processor count.", + "readOnly": true + }, + "operatingSystem": { + "type": "string", + "description": "Operating System of the machine.", + "readOnly": true + }, + "monthlyBandwidthCost": { + "type": "number", + "format": "double", + "description": "Monthly network cost estimate for the network adapters that are attached to this machine as a group, for a 31-day month.", + "readOnly": true + }, + "monthlyStorageCost": { + "type": "number", + "format": "double", + "description": "Monthly storage cost estimate for the disks that are attached to this machine as a group, for a 31-day month.", + "readOnly": true + }, + "disks": { + "type": "object", + "description": "Dictionary of disks attached to the machine. Key is ID of disk. Value is a disk object.", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/AssessedDisk" + } + }, + "networkAdapters": { + "type": "object", + "description": "Dictionary of network adapters attached to the machine. Key is name of the adapter. Value is a network adapter object.", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/AssessedNetworkAdapter" + } + }, + "recommendedSize": { + "type": "string", + "enum": [ + "Unknown", + "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_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_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_F1", + "Standard_F2", + "Standard_F4", + "Standard_F8", + "Standard_F16", + "Standard_F1s", + "Standard_F2s", + "Standard_F4s", + "Standard_F8s", + "Standard_F16s", + "Standard_G1", + "Standard_G2", + "Standard_G3", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_H8", + "Standard_H16", + "Standard_H8m", + "Standard_H16m", + "Standard_H16r", + "Standard_H16mr", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s" + ], + "description": "Recommended Azure size for this machine.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureVmSize", + "modelAsString": true + } + }, + "numberOfCoresForRecommendedSize": { + "type": "integer", + "format": "int32", + "description": "Number of CPU cores in the Recommended Azure VM Size.", + "readOnly": true + }, + "megabytesOfMemoryForRecommendedSize": { + "type": "number", + "format": "double", + "description": "Megabytes of memory in the Recommended Azure VM Size.", + "readOnly": true + }, + "monthlyComputeCostForRecommendedSize": { + "type": "number", + "format": "double", + "description": "Compute Cost for a 31-day month, if the machine is migrated to Azure with the Recommended Size.", + "readOnly": true + }, + "percentageCoresUtilization": { + "type": "number", + "format": "double", + "description": "Utilization percentage of the processor core as observed in the private data center, in the Time Range selected on Assessment, reported as the Percentile value based on the percentile number selected in assessment.", + "readOnly": true + }, + "percentageMemoryUtilization": { + "type": "number", + "format": "double", + "description": "Utilization percentage of the memory as observed in the private data center, in the Time Range selected on Assessment, reported as the Percentile value based on the percentile number selected in assessment.", + "readOnly": true + }, + "suitability": { + "type": "string", + "enum": [ + "Unknown", + "NotSuitable", + "Suitable", + "ConditionallySuitable" + ], + "description": "Whether machine is suitable for migration to Azure.", + "readOnly": true, + "x-ms-enum": { + "name": "CloudSuitability", + "modelAsString": true + } + }, + "suitabilityExplanation": { + "type": "string", + "enum": [ + "Unknown", + "NotApplicable", + "GuestOperatingSystemArchitectureNotSupported", + "GuestOperatingSystemNotSupported", + "BootTypeNotSupported", + "MoreDisksThanSupported", + "NoSuitableVmSizeFound", + "OneOrMoreDisksNotSuitable", + "OneOrMoreAdaptersNotSuitable", + "InternalErrorOccuredDuringComputeEvaluation", + "InternalErrorOccuredDuringStorageEvaluation", + "InternalErrorOccuredDuringNetworkEvaluation", + "NoVmSizeSupportsStoragePerformance", + "NoVmSizeSupportsNetworkPerformance", + "NoVmSizeForSelectedPricingTier", + "NoVmSizeForSelectedAzureLocation", + "CheckRedHatLinuxVersion", + "CheckOpenSuseLinuxVersion", + "CheckWindowsServer2008R2Version", + "CheckCentOsVersion", + "CheckDebianLinuxVersion", + "CheckSuseLinuxVersion", + "CheckOracleLinuxVersion", + "CheckUbuntuLinuxVersion", + "CheckCoreOsLinuxVersion", + "WindowsServerVersionConditionallySupported", + "NoGuestOperatingSystemConditionallySupported", + "WindowsClientVersionsConditionallySupported" + ], + "description": "If machine is not ready to be migrated, this explains the reasons and mitigation steps.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureVmSuitabilityExplanation", + "modelAsString": true + } + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + } + } + }, + "ProjectKey": { + "type": "object", + "x-ms-azure-resource": true, + "description": "ID and Key for Migration Project.", + "properties": { + "workspaceId": { + "type": "string", + "description": "ID of Migration Project.", + "readOnly": true + }, + "workspaceKey": { + "type": "string", + "description": "Key of Migration Project.", + "readOnly": true + } + } + }, + "OperationDisplay": { + "type": "object", + "description": "Displayable properties of the operation.", + "readOnly": true, + "properties": { + "provider": { + "type": "string", + "description": "Provider of the operation.", + "readOnly": true + }, + "resource": { + "type": "string", + "description": "Resource operated on by the operation.", + "readOnly": true + }, + "operation": { + "type": "string", + "description": "Operation Type.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the operation.", + "readOnly": true + } + } + }, + "Operation": { + "type": "object", + "description": "A REST API operation supported by the provider.", + "properties": { + "name": { + "type": "string", + "description": "Name of the operation.", + "readOnly": true + }, + "display": { + "description": "Displayable properties of the operation.", + "$ref": "#/definitions/OperationDisplay" + }, + "origin": { + "type": "string", + "description": "Origin of the operation.", + "readOnly": true + } + } + }, + "DownloadUrl": { + "type": "object", + "description": "Download URL for assessment report.", + "properties": { + "assessmentReportUrl": { + "type": "string", + "description": "Hyperlink to download report.", + "readOnly": true + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "description": "Expiry date of download url.", + "readOnly": true + } + } + }, + "ProjectResultList": { + "type": "object", + "description": "List of projects.", + "properties": { + "value": { + "type": "array", + "description": "List of projects.", + "items": { + "$ref": "#/definitions/Project" + } + } + } + }, + "MachineResultList": { + "type": "object", + "description": "List of machines.", + "properties": { + "value": { + "type": "array", + "description": "List of machines.", + "items": { + "$ref": "#/definitions/Machine" + } + } + } + }, + "GroupResultList": { + "type": "object", + "description": "List of groups.", + "properties": { + "value": { + "type": "array", + "description": "List of groups.", + "items": { + "$ref": "#/definitions/Group" + } + } + } + }, + "AssessedMachineResultList": { + "type": "object", + "description": "List of assessed machines.", + "properties": { + "value": { + "description": "List of assessed machines.", + "type": "array", + "items": { + "$ref": "#/definitions/AssessedMachine" + } + } + } + }, + "AssessmentResultList": { + "type": "object", + "description": "List of assessments.", + "properties": { + "value": { + "type": "array", + "description": "List of assessments.", + "items": { + "$ref": "#/definitions/Assessment" + } + } + } + }, + "OperationResultList": { + "type": "object", + "description": "List of API operations.", + "properties": { + "value": { + "type": "array", + "description": "List of operations.", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Migrate/projects": { + "get": { + "summary": "Get all projects.", + "description": "Get all the projects in the resource group.", + "operationId": "Projects_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ProjectResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription or resource group)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Projects_List": { + "$ref": "./examples/Projects_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}": { + "get": { + "summary": "Get the specified project.", + "description": "Get the project with the specified name.", + "operationId": "Projects_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Get": { + "$ref": "./examples/Projects_Get.json" + } + } + }, + "put": { + "summary": "Create or update project.", + "description": "Create a project with specified name. If a project already exists, update it.", + "operationId": "Projects_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "name": "project", + "description": "New or Updated project object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Project" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing project updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "201": { + "description": "Created. New project was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "400": { + "description": "Bad Request (Read only settings of an existing project cannot be changed)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Create": { + "$ref": "./examples/Projects_Create.json" + } + } + }, + "patch": { + "summary": "Update project.", + "description": "Update a project with specified name. Supports partial updates, for example only tags can be provided.", + "operationId": "Projects_Update", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "name": "project", + "description": "Updated project object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Project" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing project updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "400": { + "description": "Bad Request (Read only settings of an existing project cannot be changed)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, or nestName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Update": { + "$ref": "./examples/Projects_Update.json" + } + } + }, + "delete": { + "summary": "Delete the project", + "description": "Delete the project. Deleting non-existent project is a no-operation.", + "operationId": "Projects_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the group.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No project with specified name was found." + }, + "400": { + "description": "Bad request. (Invalid subscriptionId or resourceGroupName)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)" + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Delete": { + "$ref": "./examples/Projects_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/keys": { + "post": { + "summary": "Get shared keys for the project.", + "description": "Gets the Log Analytics Workspace ID and Primary Key for the specified project.", + "operationId": "Projects_GetKeys", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ProjectKey" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_GetKeys": { + "$ref": "./examples/Projects_GetKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines": { + "get": { + "summary": "Get all machines in the project", + "description": "Get data of all the machines available in the project. Returns a json array of objects of type 'machine' defined in Models section.", + "operationId": "Machines_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of all machine objects.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/MachineResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Machines_ListByProject": { + "$ref": "./examples/Machines_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines/{machineName}": { + "get": { + "summary": "Get a specific machine.", + "description": "Get the machine with the specified name. Returns a json object of type 'machine' defined in Models section.", + "operationId": "Machines_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/machineName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns the machine with the specified name.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or machineName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Machines_Get": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups": { + "get": { + "summary": "Get all groups", + "description": "Get all groups created in the project. Returns a json array of objects of type 'group' as specified in the Models section.", + "operationId": "Groups_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of groups.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/GroupResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Groups_ListByProject": { + "$ref": "./examples/Groups_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}": { + "get": { + "summary": "Get a specific group.", + "description": "Get information related to a specific group in the project. Returns a json object of type 'group' as specified in the models section.", + "operationId": "Groups_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns the group with the specified name.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Group" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or groupName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Groups_Get": { + "$ref": "./examples/Groups_Get.json" + } + } + }, + "put": { + "summary": "Create a new group with specified settings. If group with the name provided already exists, then the existing group is updated.", + "description": "Create a new group by sending a json object of type 'group' as given in Models section as part of the Request Body. The group name in a project is unique. Labels can be applied on a group as part of creation.\n\nIf a group with the groupName specified in the URL already exists, then this call acts as an update.\n\nThis operation is Idempotent.\n", + "operationId": "Groups_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "group", + "description": "New or Updated Group object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Group" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing group updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Group" + } + }, + "201": { + "description": "Created. New group was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Group" + } + }, + "400": { + "description": "Bad Request (Read only settings of an existing group cannot be changed)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Groups_Create": { + "$ref": "./examples/Groups_Create.json" + } + } + }, + "delete": { + "summary": "Delete the group", + "description": "Delete the group from the project. The machines remain in the project. Deleting a non-existent group results in a no-operation.\n\nA group is an aggregation mechanism for machines in a project. Therefore, deleting group does not delete machines in it.\n", + "operationId": "Groups_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the group.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No group with specified name was found." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)" + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName)" + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Groups_Delete": { + "$ref": "./examples/Groups_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments": { + "get": { + "summary": "Get all assessments created for the specified group.", + "description": "Get all assessments created for the specified group.\n\nReturns a json array of objects of type 'assessment' as specified in Models section.\n", + "operationId": "Assessments_ListByGroup", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of Assessment objects.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessmentResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, assessmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Assessments_ListByGroup": { + "$ref": "./examples/Assessments_ListByGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/assessments": { + "get": { + "summary": "Get all assessments created in the project.", + "description": "Get all assessments created in the project.\n\nReturns a json array of objects of type 'assessment' as specified in Models section.\n", + "operationId": "Assessments_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of Assessment objects.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessmentResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, assessmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Assessments_ListByProject": { + "$ref": "./examples/Assessments_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}": { + "get": { + "summary": "Get an assessment.", + "description": "Get an existing assessment with the specified name. Returns a json object of type 'assessment' as specified in Models section.", + "operationId": "Assessments_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns Assessment object.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Assessment" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or assesmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_Get": { + "$ref": "./examples/Assessments_Get.json" + } + } + }, + "put": { + "summary": "Create or Update assessment.", + "description": "Create a new assessment with the given name and the specified settings. Since name of an assessment in a project is a unique identiefier, if an assessment with the name provided already exists, then the existing assessment is updated.\n\nAny PUT operation, resulting in either create or update on an assessment, will cause the assessment to go in a \"InProgress\" state. This will be indicated by the field 'computationState' on the Assessment object. During this time no other PUT operation will be allowed on that assessment object, nor will a Delete operation. Once the computation for the assessment is complete, the field 'computationState' will be updated to 'Ready', and then other PUT or DELETE operations can happen on the assessment.\n\nWhen assessment is under computation, any PUT will lead to a 400 - Bad Request error.\n", + "operationId": "Assessments_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "assessment", + "description": "New or Updated Assessment object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Assessment" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing assessment updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Assessment" + } + }, + "201": { + "description": "Created. New assessment was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Assessment" + } + }, + "400": { + "description": "Bad Request. Assessment is under computation and cannot be updated yet." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_Create": { + "$ref": "./examples/Assessments_Create.json" + } + } + }, + "delete": { + "summary": "Deletes an assessment from the project.", + "description": "Delete an assessment from the project. The machines remain in the assessment. Deleting a non-existent assessment results in a no-operation.\n\nWhen an assessment is under computation, as indicated by the 'computationState' field, it cannot be deleted. Any such attempt will return a 400 - Bad Request.\n", + "operationId": "Assessments_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the assessment.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No assessment with specified name was found." + }, + "400": { + "description": "Bad Request. Assessment is under computation and cannot be deleted yet." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)" + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_Delete": { + "$ref": "./examples/Assessments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/downloadUrl": { + "post": { + "summary": "Get download URL for the assessment report.", + "description": "Get the URL for downloading the assessment in a report format.", + "operationId": "Assessments_GetReportDownloadUrl", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_GetReportDownloadUrl": { + "$ref": "./examples/Assessments_GetReportDownloadUrl.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/assessedMachines": { + "get": { + "summary": "Get assessed machines for assessment.", + "description": "Get list of machines that assessed as part of the specified assessment. Returns a json array of objects of type 'assessedMachine' as specified in the Models section.\n\nWhenever an assessment is created or updated, it goes under computation. During this phase, the 'status' field of Assessment object reports 'Computing'.\nDuring the period when the assessment is under computation, the list of assessed machines is empty and no assessed machines are returned by this call.\n", + "operationId": "AssessedMachines_ListByAssessment", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of machines with their assessment data in the assessment.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessedMachineResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or assessmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "AssessedMachines_ListByAssessment": { + "$ref": "./examples/AssessedMachines_ListByAssessment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}": { + "get": { + "summary": "Get an assessed machine.", + "description": "Get an assessed machine with its size & cost estimnate that was evaluated in the specified assessment.", + "operationId": "AssessedMachines_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/assessedMachineName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns a specific assessed machine.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessedMachine" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, groupName, assessmentName, or machineId)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "AssessedMachines_Get": { + "$ref": "./examples/AssessedMachines_Get.json" + } + } + } + }, + "/providers/Microsoft.Migrate/operations": { + "get": { + "summary": "Get list of operations supported in the API.", + "description": "Get a list of REST API supported by Microsoft.Migrate provider.", + "operationId": "Operations_List", + "responses": { + "200": { + "description": "OK. Returns list of operations.", + "schema": { + "$ref": "#/definitions/OperationResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/AssessedMachines_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/AssessedMachines_Get.json new file mode 100644 index 000000000000..0d9ad439cfc9 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/AssessedMachines_Get.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01", + "assessedMachineName": "amansing_vm1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01/assessedMachines/amansing_vm1", + "name": "amansing_vm1", + "eTag": "\"010000ef-0000-0000-0000-59b7e53e0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments/assessedMachines", + "properties": { + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "discoveredTimestamp": "2018-02-02T13:17:23.5437337Z", + "createdTimestamp": "2018-02-02T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-02T13:17:23.5437337Z", + "bootType": "BIOS", + "datacenterContainer": "10.184.81.34", + "datacenterManagementServer": "10.240.17.240", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "disks": { + "scsi0:0": { + "name": "scsi0:0", + "gigabytesProvisioned": 20, + "gigabytesConsumed": 0, + "megabytesPerSecondOfRead": 0, + "megabytesPerSecondOfReadDataPointsExpected": 300, + "megabytesPerSecondOfReadDataPointsReceived": 280, + "megabytesPerSecondOfWrite": 0, + "megabytesPerSecondOfWriteDataPointsExpected": 300, + "megabytesPerSecondOfWriteDataPointsReceived": 280, + "numberOfReadOperationsPerSecond": 0, + "numberOfReadOperationsPerSecondDataPointsExpected": 300, + "numberOfReadOperationsPerSecondDataPointsReceived": 280, + "numberOfWriteOperationsPerSecond": 0, + "numberOfWriteOperationsPerSecondDataPointsExpected": 300, + "numberOfWriteOperationsPerSecondDataPointsReceived": 280, + "monthlyStorageCost": 0, + "recommendedDiskSize": "Standard_S4", + "recommendedDiskType": "Standard", + "gigabytesForRecommendedDiskSize": 32, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ], + "megabytesPerSecondReceived": 0, + "megabytesPerSecondReceivedDataPointsExpected": 300, + "megabytesPerSecondOfReadDataPointsReceived": 280, + "megabytesPerSecondTransmitted": 0, + "megabytesPerSecondTransmittedDataPointsExpected": 300, + "megabytesPerSecondTransmittedDataPointsReceived": 280, + "monthlyBandwidthCosts": 0, + "netGigabytesTransmittedPerMonth": 0, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "recommendedSize": "Standard_A0", + "numberOfCoresForRecommendedSize": 1, + "megabytesOfMemoryForRecommendedSize": 786, + "monthlyComputeCostForRecommendedSize": 0, + "percentageCoresUtilization": 0.7752173913043479, + "percentageMemoryUtilization": 0.43666666666666665, + "percentageCoresUtilizationDataPointsExpected": 300, + "percentageCoresUtilizationDataPointsReceived": 280, + "percentageMemoryUtilizationDataPointsExpected": 300, + "percentageMemoryUtilizationDataPointsReceived": 280, + "suitability": "ConditionallySuitable", + "suitabilityExplanation": "WindowsServerVersionConditionallySupported" + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} + diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/AssessedMachines_ListByAssessment.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/AssessedMachines_ListByAssessment.json new file mode 100644 index 000000000000..08e7085ef405 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/AssessedMachines_ListByAssessment.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01/assessedMachines/amansing_vm1", + "name": "amansing_vm1", + "eTag": "\"010000ef-0000-0000-0000-59b7e53e0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments/assessedMachines", + "properties": { + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "discoveredTimestamp": "2018-02-02T13:17:23.5437337Z", + "createdTimestamp": "2018-02-03T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-04T13:17:23.5437337Z", + "bootType": "BIOS", + "datacenterContainer": "10.184.81.34", + "datacenterManagementServer": "10.240.17.240", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "disks": { + "scsi0:0": { + "name": "scsi0:0", + "gigabytesProvisioned": 20, + "gigabytesConsumed": 0, + "megabytesPerSecondOfRead": 0, + "megabytesPerSecondOfReadDataPointsExpected": 300, + "megabytesPerSecondOfReadDataPointsReceived": 280, + "megabytesPerSecondOfWrite": 0, + "megabytesPerSecondOfWriteDataPointsExpected": 300, + "megabytesPerSecondOfWriteDataPointsReceived": 280, + "numberOfReadOperationsPerSecond": 0, + "numberOfReadOperationsPerSecondDataPointsExpected": 300, + "numberOfReadOperationsPerSecondDataPointsReceived": 280, + "numberOfWriteOperationsPerSecond": 0, + "numberOfWriteOperationsPerSecondDataPointsExpected": 300, + "numberOfWriteOperationsPerSecondDataPointsReceived": 280, + "monthlyStorageCost": 0, + "recommendedDiskSize": "Standard_S4", + "recommendedDiskType": "Standard", + "gigabytesForRecommendedDiskSize": 32, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ], + "megabytesPerSecondReceived": 0, + "megabytesPerSecondReceivedDataPointsExpected": 300, + "megabytesPerSecondOfReadDataPointsReceived": 280, + "megabytesPerSecondTransmitted": 0, + "megabytesPerSecondTransmittedDataPointsExpected": 300, + "megabytesPerSecondTransmittedDataPointsReceived": 280, + "monthlyBandwidthCosts": 0, + "netGigabytesTransmittedPerMonth": 0, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "recommendedSize": "Standard_A0", + "numberOfCoresForRecommendedSize": 1, + "megabytesOfMemoryForRecommendedSize": 786, + "monthlyComputeCostForRecommendedSize": 0, + "percentageCoresUtilization": 0.7752173913043479, + "percentageMemoryUtilization": 0.43666666666666665, + "percentageCoresUtilizationDataPointsExpected": 300, + "percentageCoresUtilizationDataPointsReceived": 280, + "percentageMemoryUtilizationDataPointsExpected": 300, + "percentageMemoryUtilizationDataPointsReceived": 280, + "suitability": "ConditionallySuitable", + "suitabilityExplanation": "WindowsServerVersionConditionallySupported" + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01/assessedMachines/amansing_vm2", + "name": "amansing_vm2", + "eTag": "\"0000918f-0000-0000-0000-59c12ce90000\"", + "type": "Microsoft.Migrate/projects/groups/assessments/assessedMachines", + "properties": { + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "discoveredTimestamp": "2018-02-02T13:17:23.5437337Z", + "createdTimestamp": "2018-02-03T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-04T13:17:23.5437337Z", + "bootType": "BIOS", + "datacenterContainer": "10.184.81.34", + "datacenterManagementServer": "10.240.17.240", + "datacenterMachineId": "vmWare_amansing_vm2", + "datacenterManagementServerId": "vmWare_unique_id", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm2", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "disks": { + "scsi0:0": { + "name": "scsi0:0", + "gigabytesProvisioned": 20, + "gigabytesConsumed": 0, + "megabytesPerSecondOfRead": 0, + "megabytesPerSecondOfReadDataPointsExpected": 300, + "megabytesPerSecondOfReadDataPointsReceived": 280, + "megabytesPerSecondOfWrite": 0, + "megabytesPerSecondOfWriteDataPointsExpected": 300, + "megabytesPerSecondOfWriteDataPointsReceived": 280, + "numberOfReadOperationsPerSecond": 0, + "numberOfReadOperationsPerSecondDataPointsExpected": 300, + "numberOfReadOperationsPerSecondDataPointsReceived": 280, + "numberOfWriteOperationsPerSecond": 0, + "numberOfWriteOperationsPerSecondDataPointsExpected": 300, + "numberOfWriteOperationsPerSecondDataPointsReceived": 280, + "monthlyStorageCost": 0, + "recommendedDiskSize": "Standard_S4", + "recommendedDiskType": "Standard", + "gigabytesForRecommendedDiskSize": 32, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ], + "megabytesPerSecondReceived": 0, + "megabytesPerSecondReceivedDataPointsExpected": 300, + "megabytesPerSecondOfReadDataPointsReceived": 280, + "megabytesPerSecondTransmitted": 0, + "megabytesPerSecondTransmittedDataPointsExpected": 300, + "megabytesPerSecondTransmittedDataPointsReceived": 280, + "monthlyBandwidthCosts": 0, + "netGigabytesTransmittedPerMonth": 0, + "suitability": "Suitable", + "suitabilityExplanation": "NotApplicable" + } + }, + "recommendedSize": "Standard_A0", + "numberOfCoresForRecommendedSize": 1, + "megabytesOfMemoryForRecommendedSize": 786, + "monthlyComputeCostForRecommendedSize": 0, + "percentageCoresUtilization": 0.7752173913043479, + "percentageMemoryUtilization": 0.43666666666666665, + "percentageCoresUtilizationDataPointsExpected": 300, + "percentageCoresUtilizationDataPointsReceived": 280, + "percentageMemoryUtilizationDataPointsExpected": 300, + "percentageMemoryUtilizationDataPointsReceived": 280, + "suitability": "ConditionallySuitable", + "suitabilityExplanation": "WindowsServerVersionConditionallySupported" + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} + diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Create.json new file mode 100644 index 000000000000..e5526d3e5b35 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Create.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01", + "assessment": { + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "sizingCriterion": "PerformanceBased" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "confidenceRatingInPercentage": 93.52, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T13:25:02.6983504Z", + "updatedTimestamp": "2018-02-02T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "confidenceRatingInPercentage": 93.52, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T13:25:02.6983504Z", + "updatedTimestamp": "2018-02-02T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + } + }, + "401": {}, + "400": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Delete.json new file mode 100644 index 000000000000..9bb865108097 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "204": {}, + "200": {}, + "400": {}, + "401": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Get.json new file mode 100644 index 000000000000..fea561ac5d49 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "confidenceRatingInPercentage": 90.28, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T13:25:02.6983504Z", + "updatedTimestamp": "2018-02-02T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_GetReportDownloadUrl.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_GetReportDownloadUrl.json new file mode 100644 index 000000000000..0fa576d5b5da --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_GetReportDownloadUrl.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "assessmentName": "assessment01" + }, + "responses": { + "200": { + "body": { + "assessmentReportUrl": "link-to-download-assessment-report", + "expirationTime": "2018-02-02T13:17:23.5437337Z" + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_ListByGroup.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_ListByGroup.json new file mode 100644 index 000000000000..ce1f9ce0c682 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_ListByGroup.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "confidenceRatingInPercentage": 93.52, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T13:25:02.6983504Z", + "updatedTimestamp": "2018-02-02T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02", + "name": "assessment02", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1, + "percentile": "Percentile99", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 20, + "confidenceRatingInPercentage": 90.28, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T09:59:21.5319568Z", + "updatedTimestamp": "2018-02-02T09:59:21.5319568Z", + "monthlyComputeCost": 50, + "monthlyBandwidthCost": 10, + "monthlyStorageCost": 30, + "status": "Completed", + "numberOfMachines": 4 + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_ListByProject.json new file mode 100644 index 000000000000..3cb703e6c29c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Assessments_ListByProject.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "name": "assessment01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1.2, + "percentile": "Percentile50", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 100, + "confidenceRatingInPercentage": 93.52, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T13:25:02.6983504Z", + "updatedTimestamp": "2018-02-02T13:45:57.0489951Z", + "monthlyComputeCost": 0, + "monthlyBandwidthCost": 0, + "monthlyStorageCost": 0, + "status": "Invalid", + "numberOfMachines": 4 + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02", + "name": "assessment02", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups/assessments", + "properties": { + "azureLocation": "WestUs", + "azureOfferCode": "MSAZR0003P", + "azurePricingTier": "Standard", + "azureStorageRedundancy": "LocallyRedundant", + "scalingFactor": 1, + "percentile": "Percentile99", + "timeRange": "Day", + "stage": "InProgress", + "currency": "USD", + "azureHybridUseBenefit": "Yes", + "discountPercentage": 20, + "confidenceRatingInPercentage": 90.28, + "sizingCriterion": "PerformanceBased", + "pricesTimestamp": "2018-02-02T13:25:02.6983504Z", + "createdTimestamp": "2018-02-02T09:59:21.5319568Z", + "updatedTimestamp": "2018-02-02T09:59:21.5319568Z", + "monthlyComputeCost": 50, + "monthlyBandwidthCost": 10, + "monthlyStorageCost": 30, + "status": "Completed", + "numberOfMachines": 4 + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Create.json new file mode 100644 index 000000000000..e84a07ead2f0 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Create.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01", + "group": { + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm3" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm3" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2018-02-02T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-02T09:13:02.7580235Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm3" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2018-02-02T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-02T09:13:02.7580235Z" + } + } + }, + "401": {}, + "400": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Delete.json new file mode 100644 index 000000000000..334d65a859cd --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01" + }, + "responses": { + "204": {}, + "200": {}, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Get.json new file mode 100644 index 000000000000..bf56233d45c4 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "groupName": "group01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2018-02-02T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-02T09:13:02.7580235Z" + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_ListByProject.json new file mode 100644 index 000000000000..64a95ec7248a --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Groups_ListByProject.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01", + "name": "group01", + "eTag": "\"1100637e-0000-0000-0000-59f6ed1f0000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group01/assessments/assessment02" + ], + "createdTimestamp": "2018-02-02T13:17:23.5437337Z", + "updatedTimestamp": "2018-02-02T09:13:02.7580235Z" + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group02", + "name": "group02", + "eTag": "\"0000470d-0000-0000-0000-59b90d820000\"", + "type": "Microsoft.Migrate/projects/groups", + "properties": { + "machines": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm1" + ], + "assessments": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/groups/group02/assessments/assessment03" + ], + "createdTimestamp": "2018-02-02T10:50:43.4356428Z", + "updatedTimestamp": "2018-02-02T10:50:43.4356428Z" + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Machines_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Machines_Get.json new file mode 100644 index 000000000000..40d972a1b09c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Machines_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "machineName": "amansing_vm1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/machines/amansing_vm1", + "name": "amansing_vm1", + "type": "Microsoft.Migrate/projects/machines", + "eTag": "\"b701c63a-0000-0000-0000-59c12fe60000\"", + "properties": { + "bootType": "BIOS", + "datacenterContainer": "vmWareFolder", + "datacenterManagementServer": "123.123.123.123", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "createdTimestamp": "2018-02-02T07:44:44.5677283Z", + "discoveredTimestamp": "2018-02-02T07:44:44.5677283Z", + "disks": { + "scsi0:0": { + "gigabytesAllocated": 20, + "gigabytesConsumed": 0 + } + }, + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ] + } + }, + "updatedTimestamp": "2018-02-02T10:11:25.7585427Z" + } + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Machines_ListByProject.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Machines_ListByProject.json new file mode 100644 index 000000000000..8d7085665d98 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Machines_ListByProject.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/machines/amansing_vm1", + "name": "amansing_vm1", + "type": "Microsoft.Migrate/projects/machines", + "eTag": "\"b701c63a-0000-0000-0000-59c12fe60000\"", + "properties": { + "bootType": "BIOS", + "datacenterContainer": "vmWareFolder", + "datacenterManagementServer": "123.123.123.123", + "datacenterMachineId": "vmWare_amansing_vm1", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm1", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "createdTimestamp": "2018-02-02T07:44:44.5677283Z", + "discoveredTimestamp": "2018-02-02T07:44:44.5677283Z", + "disks": { + "scsi0:0": { + "gigabytesAllocated": 20, + "gigabytesConsumed": 0 + } + }, + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01", + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups02" + ], + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ] + } + }, + "updatedTimestamp": "2018-02-02T10:11:25.7585427Z" + } + }, + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01/machines/amansing_vm2", + "name": "amansing_vm2", + "type": "Microsoft.Migrate/projects/machines", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "properties": { + "bootType": "BIOS", + "datacenterContainer": "vmWareFolder", + "datacenterManagementServer": "123.123.123.123", + "datacenterMachineId": "vmWare_amansing_vm2", + "datacenterManagementServerId": "vmWare_unqie_01", + "description": "Azure Migration Planner - Collector", + "displayName": "amansing_vm2", + "megabytesOfMemory": 8192, + "numberOfCores": 4, + "operatingSystem": "Microsoft Windows Server 2008 (64-bit)", + "createdTimestamp": "2018-02-02T07:44:44.5677283Z", + "updatedTimestamp": "2018-02-02T10:11:25.7585427Z", + "discoveredTimestamp": "2018-02-02T07:44:44.5677283Z", + "disks": { + "scsi0:0": { + "gigabytesAllocated": 20, + "gigabytesConsumed": 0 + } + }, + "groups": [ + "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/projects01/groups/groups01" + ], + "networkAdapters": { + "4000": { + "macAddress": "00:50:56:ba:7f:25", + "ipAddresses": [ + "2001:4898:e0:f099:91fd:55f:42de:c130", + "2001:4898:e0:f099:ac11:23c3:e39f:533d", + "fe80::91fd:55f:42de:c130", + "10.184.83.206" + ] + } + } + } + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Operations_List.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Operations_List.json new file mode 100644 index 000000000000..61ea5165abc6 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Operations_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Read", + "display": { + "provider": "Microsoft.Migrate", + "resource": "Microsoft.Migrate/projects", + "operation": "Read", + "description": "Reads a project" + }, + "origin": "user,system" + }, + { + "name": "Write", + "display": { + "provider": "Microsoft.Migrate", + "resource": "Microsoft.Migrate/projects", + "operation": "Write", + "description": "Creates or updates a project" + }, + "origin": "user,system" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Create.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Create.json new file mode 100644 index 000000000000..2a6a3a23d608 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Create.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "project": { + "properties": { + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "responses": { + "201": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2018-02-02T13:11:30.8808917Z", + "updatedTimestamp": "2018-02-02T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us", + "lastDiscoveryTimestamp": "2018-02-02T13:11:30.8808917Z", + "lastDiscoverySessionId": "2c213c69-e2d3-4c3e-b871-83e5f42f3299", + "lastAssessmentTimestamp": "2018-02-02T13:11:30.8808917Z", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "200": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2018-02-02T13:11:30.8808917Z", + "updatedTimestamp": "2018-02-02T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us", + "lastDiscoveryTimestamp": "2018-02-02T13:11:30.8808917Z", + "lastDiscoverySessionId": "2c213c69-e2d3-4c3e-b871-83e5f42f3299", + "lastAssessmentTimestamp": "2018-02-02T13:11:30.8808917Z", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "400": {}, + "401": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Delete.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Delete.json new file mode 100644 index 000000000000..0723b134b09c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": {}, + "204": {}, + "400": {}, + "401": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Get.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Get.json new file mode 100644 index 000000000000..694496398074 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2018-02-02T13:11:30.8808917Z", + "updatedTimestamp": "2018-02-02T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us", + "lastDiscoveryTimestamp": "2018-02-02T13:11:30.8808917Z", + "lastDiscoverySessionId": "2c213c69-e2d3-4c3e-b871-83e5f42f3299", + "lastAssessmentTimestamp": "2018-02-02T13:11:30.8808917Z", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_GetKeys.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_GetKeys.json new file mode 100644 index 000000000000..6b963ed9426c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_GetKeys.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01" + }, + "responses": { + "200": { + "body": { + "workspaceId": "migrationProjectId", + "workspaceKey": "migrationProjectKey" + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_List.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_List.json new file mode 100644 index 000000000000..a47e8934f652 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_List.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2018-02-02T13:11:30.8808917Z", + "updatedTimestamp": "2018-02-02T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us", + "lastDiscoveryTimestamp": "2018-02-02T13:11:30.8808917Z", + "lastDiscoverySessionId": "2c213c69-e2d3-4c3e-b871-83e5f42f3299", + "lastAssessmentTimestamp": "2018-02-02T13:11:30.8808917Z", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + }, + { + "properties": { + "numberOfGroups": 4, + "numberOfMachines": 6, + "numberOfAssessments": 4, + "createdTimestamp": "2018-02-02T10:50:05.3206647Z", + "updatedTimestamp": "2018-02-02T10:50:05.3236679Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us", + "lastDiscoveryTimestamp": "2018-02-02T13:11:30.8808917Z", + "lastDiscoverySessionId": "2c213c69-e2d3-4c3e-b871-83e5f42f3299", + "lastAssessmentTimestamp": "2018-02-02T13:11:30.8808917Z", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project02", + "name": "project02", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-1111-0000-59c12ff02222\"", + "location": "West Us", + "tags": {} + } + ] + } + }, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Update.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Update.json new file mode 100644 index 000000000000..b203e804ec6a --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/examples/Projects_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "resourceGroupName": "myResourceGroup", + "api-version": "2018-02-02", + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "projectName": "project01", + "project": { + "properties": { + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "", + "location": "West Us", + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "properties": { + "numberOfGroups": 2, + "numberOfMachines": 5, + "numberOfAssessments": 5, + "createdTimestamp": "2018-02-02T13:11:30.8808917Z", + "updatedTimestamp": "2018-02-02T13:11:30.8848966Z", + "discoveryStatus": "NotStarted", + "customerWorkspaceId": "url-to-customers-service-map", + "customerWorkspaceLocation": "West Us", + "lastDiscoveryTimestamp": "2018-02-02T13:11:30.8808917Z", + "lastDiscoverySessionId": "2c213c69-e2d3-4c3e-b871-83e5f42f3299", + "lastAssessmentTimestamp": "2018-02-02T13:11:30.8808917Z", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.Migrate/projects/project01", + "name": "project01", + "type": "Microsoft.Migrate/projects", + "eTag": "\"b701c73a-0000-0000-0000-59c12ff00000\"", + "location": "West Us", + "tags": {} + } + }, + "400": {}, + "401": {}, + "404": {}, + "500": {}, + "503": {} + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/migrate.json b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/migrate.json new file mode 100644 index 000000000000..2776562901b2 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.Migrate/2018-02-02/migrate.json @@ -0,0 +1,2926 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-02-02", + "title": "Azure Migrate", + "description": "Move your workloads to Azure.", + "contact": { + "name": "Microsoft", + "email": "azuremigrate@microsoft.com" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "description": "Azure Subscription Id in which project was created.", + "type": "string", + "in": "path", + "required": true + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "Name of the Azure Resource Group that project is part of.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "projectName": { + "name": "projectName", + "description": "Name of the Azure Migrate project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "machineName": { + "name": "machineName", + "description": "Unique name of a machine in private datacenter.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "assessedMachineName": { + "name": "assessedMachineName", + "description": "Unique name of an assessed machine evaluated as part of an assessment.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "groupName": { + "name": "groupName", + "description": "Unique name of a group within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "assessmentName": { + "name": "assessmentName", + "description": "Unique name of an assessment within a project.", + "type": "string", + "in": "path", + "x-ms-parameter-location": "method", + "required": true + }, + "api-version": { + "name": "api-version", + "description": "Standard request header. Used by service to identify API version used by client.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "2018-02-02" + ] + }, + "acceptLanguage": { + "description": "Standard request header. Used by service to respond to client in appropriate language.", + "name": "Accept-Language", + "type": "string", + "in": "header", + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "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" + ] + } + ], + "definitions": { + "Project": { + "type": "object", + "x-ms-azure-resource": true, + "description": "Azure Migrate Project.", + "properties": { + "id": { + "type": "string", + "description": "Path reference to this project /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the project.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects].", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "location": { + "type": "string", + "description": "Azure location in which project is created." + }, + "tags": { + "type": "object", + "description": "Tags provided by Azure Tagging service." + }, + "properties": { + "description": "Properties of the project.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectProperties" + } + } + }, + "ProjectProperties": { + "type": "object", + "description": "Properties of a project.", + "properties": { + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "discoveryStatus": { + "type": "string", + "enum": [ + "Unknown", + "NotStarted", + "InProgress", + "Completed" + ], + "readOnly": true, + "description": "Reports whether project is under discovery.", + "x-ms-enum": { + "name": "DiscoveryStatus", + "modelAsString": true + } + }, + "customerWorkspaceId": { + "type": "string", + "description": "ARM ID of the Service Map workspace created by user." + }, + "customerWorkspaceLocation": { + "type": "string", + "description": "Location of the Service Map workspace created by user." + }, + "lastDiscoveryTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format. This value will be null until discovery is complete.", + "x-nullable": true, + "readOnly": true + }, + "lastDiscoverySessionId": { + "type": "string", + "description": "Session id of the last discovery.", + "readOnly": true + }, + "numberOfGroups": { + "type": "integer", + "format": "int32", + "description": "Number of groups created in the project.", + "readOnly": true + }, + "numberOfMachines": { + "type": "integer", + "format": "int32", + "description": "Number of machines in the project.", + "readOnly": true + }, + "numberOfAssessments": { + "type": "integer", + "format": "int32", + "description": "Number of assessments created in the project.", + "readOnly": true + }, + "lastAssessmentTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when last assessment was created. Date-Time represented in ISO-8601 format. This value will be null until assessment is created.", + "x-nullable": true, + "readOnly": true + }, + "provisioningState": { + "type": "string", + "enum": [ + "Accepted", + "Creating", + "Deleting", + "Failed", + "Moving", + "Succeeded" + ], + "description": "Provisioning state of the project.", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "Group": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A group created in a Migration project.", + "required": [ + "properties" + ], + "properties": { + "id": { + "description": "Path reference to this group. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the group.", + "type": "string", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/groups].", + "readOnly": true + }, + "properties": { + "description": "Properties of the group.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupProperties" + } + } + }, + "GroupProperties": { + "type": "object", + "description": "Properties of group resource.", + "required": [ + "machines" + ], + "properties": { + "machines": { + "type": "array", + "description": "List of machine names that are part of this group.", + "items": { + "type": "string", + "description": "Reference to a machine. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines/{machineName}" + } + }, + "assessments": { + "type": "array", + "description": "List of References to Assessments created on this group.", + "readOnly": true, + "items": { + "type": "string", + "description": "Reference to an Assessment. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}", + "readOnly": true + } + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + } + } + }, + "Assessment": { + "type": "object", + "x-ms-azure-resource": true, + "description": "An assessment created for a group in the Migration project.", + "required": [ + "properties" + ], + "properties": { + "id": { + "type": "string", + "description": "Path reference to this assessment. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessment/{assessmentName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Unique name of an assessment.", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/groups/assessments].", + "readOnly": true + }, + "properties": { + "description": "Properties of the assessment.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AssessmentProperties" + } + } + }, + "AssessmentProperties": { + "type": "object", + "description": "Properties of an assessment.", + "required": [ + "stage", + "azureOfferCode", + "timeRange", + "percentile", + "azureLocation", + "azureStorageRedundancy", + "scalingFactor", + "azurePricingTier", + "currency", + "azureHybridUseBenefit", + "discountPercentage", + "sizingCriterion" + ], + "properties": { + "azureLocation": { + "type": "string", + "enum": [ + "Unknown", + "EastAsia", + "SoutheastAsia", + "AustraliaEast", + "AustraliaSoutheast", + "BrazilSouth", + "CanadaCentral", + "CanadaEast", + "WestEurope", + "NorthEurope", + "CentralIndia", + "SouthIndia", + "WestIndia", + "JapanEast", + "JapanWest", + "KoreaCentral", + "KoreaSouth", + "UkWest", + "UkSouth", + "NorthCentralUs", + "EastUs", + "WestUs2", + "SouthCentralUs", + "CentralUs", + "EastUs2", + "WestUs", + "WestCentralUs", + "GermanyCentral", + "GermanyNortheast", + "ChinaNorth", + "ChinaEast" + ], + "description": "Target Azure location for which the machines should be assessed. These enums are the same as used by Compute API.", + "x-ms-enum": { + "name": "AzureLocation", + "modelAsString": true + } + }, + "azureOfferCode": { + "type": "string", + "enum": [ + "Unknown", + "MSAZR0003P", + "MSAZR0044P", + "MSAZR0059P", + "MSAZR0060P", + "MSAZR0062P", + "MSAZR0063P", + "MSAZR0064P", + "MSAZR0029P", + "MSAZR0022P", + "MSAZR0023P", + "MSAZR0148P", + "MSAZR0025P", + "MSAZR0036P", + "MSAZR0120P", + "MSAZR0121P", + "MSAZR0122P", + "MSAZR0123P", + "MSAZR0124P", + "MSAZR0125P", + "MSAZR0126P", + "MSAZR0127P", + "MSAZR0128P", + "MSAZR0129P", + "MSAZR0130P", + "MSAZR0111P", + "MSAZR0144P", + "MSAZR0149P", + "MSMCAZR0044P", + "MSMCAZR0059P", + "MSMCAZR0060P", + "MSMCAZR0063P", + "MSMCAZR0120P", + "MSMCAZR0121P", + "MSMCAZR0125P", + "MSMCAZR0128P", + "MSAZRDE0003P", + "MSAZRDE0044P" + ], + "description": "Offer code according to which cost estimation is done.", + "x-ms-enum": { + "name": "AzureOfferCode", + "modelAsString": true + } + }, + "azurePricingTier": { + "type": "string", + "enum": [ + "Standard", + "Basic" + ], + "description": "Pricing tier for Size evaluation.", + "x-ms-enum": { + "name": "AzurePricingTier", + "modelAsString": true + } + }, + "azureStorageRedundancy": { + "type": "string", + "enum": [ + "Unknown", + "LocallyRedundant", + "ZoneRedundant", + "GeoRedundant", + "ReadAccessGeoRedundant" + ], + "description": "Storage Redundancy type offered by Azure.", + "x-ms-enum": { + "name": "AzureStorageRedundancy", + "modelAsString": true + } + }, + "scalingFactor": { + "type": "number", + "format": "double", + "description": "Scaling factor used over utilization data to add a performance buffer for new machines to be created in Azure. Min Value = 1.0, Max value = 1.9, Default = 1.3." + }, + "percentile": { + "type": "string", + "enum": [ + "Percentile50", + "Percentile90", + "Percentile95", + "Percentile99" + ], + "description": "Percentile of performance data used to recommend Azure size.", + "x-ms-enum": { + "name": "Percentile", + "modelAsString": true + } + }, + "timeRange": { + "type": "string", + "enum": [ + "Day", + "Week", + "Month" + ], + "description": "Time range of performance data used to recommend a size.", + "x-ms-enum": { + "name": "TimeRange", + "modelAsString": true + } + }, + "stage": { + "type": "string", + "enum": [ + "InProgress", + "UnderReview", + "Approved" + ], + "description": "User configurable setting that describes the status of the assessment.", + "x-ms-enum": { + "name": "AssessmentStage", + "modelAsString": true + } + }, + "currency": { + "type": "string", + "enum": [ + "Unknown", + "USD", + "DKK", + "CAD", + "IDR", + "JPY", + "KRW", + "NZD", + "NOK", + "RUB", + "SAR", + "ZAR", + "SEK", + "TRY", + "GBP", + "MXN", + "MYR", + "INR", + "HKD", + "BRL", + "TWD", + "EUR", + "CHF", + "ARS", + "AUD", + "CNY" + ], + "description": "Currency to report prices in.", + "x-ms-enum": { + "name": "Currency", + "modelAsString": true + } + }, + "azureHybridUseBenefit": { + "type": "string", + "enum": [ + "Unknown", + "Yes", + "No" + ], + "description": "AHUB discount on windows virtual machines.", + "x-ms-enum": { + "name": "AzureHybridUseBenefit", + "modelAsString": true + } + }, + "discountPercentage": { + "type": "number", + "format": "double", + "description": "Custom discount percentage to be applied on final costs. Can be in the range [0, 100]." + }, + "confidenceRatingInPercentage": { + "type": "number", + "format": "double", + "description": "Confidence rating percentage for assessment. Can be in the range [0, 100].", + "x-nullable": true, + "readOnly": true + }, + "sizingCriterion": { + "type": "string", + "enum": [ + "PerformanceBased", + "AsOnPremises" + ], + "description": "Assessment sizing criterion.", + "x-ms-enum": { + "name": "AssessmentSizingCriterion", + "modelAsString": true + } + }, + "pricesTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when the Azure Prices were queried. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this project was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "monthlyComputeCost": { + "type": "number", + "format": "double", + "description": "Monthly compute cost estimate for the machines that are part of this assessment as a group, for a 31-day month.", + "readOnly": true + }, + "monthlyBandwidthCost": { + "type": "number", + "format": "double", + "description": "Monthly network cost estimate for the machines that are part of this assessment as a group, for a 31-day month.", + "readOnly": true + }, + "monthlyStorageCost": { + "type": "number", + "format": "double", + "description": "Monthly storage cost estimate for the machines that are part of this assessment as a group, for a 31-day month.", + "readOnly": true + }, + "status": { + "type": "string", + "enum": [ + "Created", + "Updated", + "Running", + "Completed", + "Invalid" + ], + "description": "Wheter the assessment has been created and is valid.", + "readOnly": true, + "x-ms-enum": { + "name": "AssessmentStatus", + "modelAsString": true + } + }, + "numberOfMachines": { + "type": "integer", + "format": "int32", + "description": "Number of assessed machines part of this assessment.", + "readOnly": true + } + } + }, + "Disk": { + "type": "object", + "description": "A disk discovered on a machine.", + "properties": { + "gigabytesAllocated": { + "type": "number", + "format": "double", + "description": "Gigabytes of storage provisioned for this disk.", + "readOnly": true + }, + "gigabytesConsumed": { + "format": "double", + "type": "number", + "description": "Gigabytes of storage consumed by this disk.", + "readOnly": true + } + } + }, + "NetworkAdapter": { + "type": "object", + "description": "A network adapter discovered on a machine.", + "properties": { + "macAddress": { + "type": "string", + "description": "MAC Address of the network adapter.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "description": "List of IP Addresses on the network adapter.", + "readOnly": true, + "items": { + "type": "string", + "description": "IP Address of the network adapter.", + "readOnly": true + } + } + } + }, + "Machine": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A machine in a migration project.", + "properties": { + "id": { + "type": "string", + "description": "Path reference to this machine. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines/{machineName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the machine. It is a GUID which is unique identifier of machine in private data center. For user-readable name, we have a displayName property on this machine.", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/machines].", + "readOnly": true + }, + "properties": { + "description": "Properties of the machine.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineProperties" + } + } + }, + "MachineProperties": { + "type": "object", + "description": "Properties of a machine.", + "properties": { + "bootType": { + "type": "string", + "description": "Boot type of the machine.", + "enum": [ + "Unknown", + "EFI", + "BIOS" + ], + "readOnly": true, + "x-ms-enum": { + "name": "MachineBootType", + "modelAsString": true + } + }, + "datacenterContainer": { + "type": "string", + "description": "Container defined in the management solution that this machine is part of in the datacenter.", + "readOnly": true + }, + "datacenterManagementServer": { + "type": "string", + "description": "Name of the server hosting the datacenter management solution.", + "readOnly": true + }, + "datacenterMachineId": { + "type": "string", + "description": "ID of the machine as tracked by the datacenter management solution.", + "readOnly": true + }, + "datacenterManagementServerId": { + "type": "string", + "description": "ID of the server hosting the datacenter management solution.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the machine", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "User readable name of the machine as defined by the user in their private datacenter.", + "readOnly": true + }, + "megabytesOfMemory": { + "type": "number", + "description": "Memory in Megabytes.", + "readOnly": true + }, + "numberOfCores": { + "type": "integer", + "description": "Processor count.", + "readOnly": true + }, + "operatingSystem": { + "type": "string", + "description": "Operating System of the machine.", + "readOnly": true + }, + "groups": { + "type": "array", + "description": "List of references to the groups that the machine is member of.", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true, + "description": "Reference to a group that this machine is member of. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}" + } + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "discoveredTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was discovered by Azure Migrate agent. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "disks": { + "type": "object", + "description": "Dictionary of disks attached to the machine. Key is ID of disk. Value is a disk object", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/Disk" + } + }, + "networkAdapters": { + "type": "object", + "description": "Dictionary of network adapters attached to the machine. Key is ID of network adapter. Value is a network adapter object", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/NetworkAdapter" + } + } + } + }, + "AssessedDisk": { + "type": "object", + "description": "A disk assessed for an assessment.", + "properties": { + "name": { + "type": "string", + "description": "Name of the assessed disk.", + "readOnly": true + }, + "gigabytesProvisioned": { + "type": "number", + "format": "double", + "description": "Gigabytes of storage provisioned for this disk.", + "readOnly": true + }, + "gigabytesConsumed": { + "type": "number", + "format": "double", + "description": "Gigabytes of storage consumed by this disk.", + "readOnly": true + }, + "megabytesPerSecondOfRead": { + "type": "number", + "format": "double", + "description": "Disk throughput in MegaBytes per second.", + "readOnly": true + }, + "megabytesPerSecondOfReadDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected data points for MegaBytes per second of read.", + "x-nullable": true, + "readOnly": true + }, + "megabytesPerSecondOfReadDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received data points for MegaBytes per second of read.", + "x-nullable": true, + "readOnly": true + }, + "megabytesPerSecondOfWrite": { + "type": "number", + "format": "double", + "description": "Disk throughput in MegaBytes per second.", + "readOnly": true + }, + "megabytesPerSecondOfWriteDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected data points for MegaBytes per second of write.", + "x-nullable": true, + "readOnly": true + }, + "megabytesPerSecondOfWriteDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received data points for MegaBytes per second of write.", + "x-nullable": true, + "readOnly": true + }, + "numberOfReadOperationsPerSecond": { + "type": "number", + "format": "double", + "description": "Number of read operations per second for the disk.", + "readOnly": true + }, + "numberOfReadOperationsPerSecondDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected number of data points for read operations per second.", + "x-nullable": true, + "readOnly": true + }, + "numberOfReadOperationsPerSecondDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received number of data points for read operations per second.", + "x-nullable": true, + "readOnly": true + }, + "numberOfWriteOperationsPerSecond": { + "type": "number", + "format": "double", + "description": "Number of read and write operations per second for the disk.", + "readOnly": true + }, + "numberOfWriteOperationsPerSecondDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected number of data points for write operations per second.", + "x-nullable": true, + "readOnly": true + }, + "numberOfWriteOperationsPerSecondDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received number of data points for write operations per second.", + "x-nullable": true, + "readOnly": true + }, + "monthlyStorageCost": { + "type": "number", + "format": "double", + "description": "Estimated aggregate storage cost for a 31-day month for this disk.", + "readOnly": true + }, + "recommendedDiskType": { + "type": "string", + "enum": [ + "Unknown", + "Standard", + "Premium" + ], + "description": "Storage type selected for this disk.", + "x-ms-enum": { + "name": "AzureDiskType", + "modelAsString": true + }, + "readOnly": true + }, + "recommendedDiskSize": { + "type": "string", + "enum": [ + "Unknown", + "Standard_S4", + "Standard_S6", + "Standard_S10", + "Standard_S20", + "Standard_S30", + "Standard_S40", + "Standard_S50", + "Premium_P4", + "Premium_P6", + "Premium_P10", + "Premium_P20", + "Premium_P30", + "Premium_P40", + "Premium_P50" + ], + "description": "Recommended Azure size for the disk, given utilization data and preferences set on Assessment.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureDiskSize", + "modelAsString": true + } + }, + "gigabytesForRecommendedDiskSize": { + "type": "integer", + "format": "int32", + "description": "Gigabytes of storage provided by the recommended Azure disk size.", + "readOnly": true + }, + "suitability": { + "type": "string", + "enum": [ + "Unknown", + "NotSuitable", + "Suitable", + "ConditionallySuitable", + "ReadinessUnknown" + ], + "description": "Whether this disk is suitable for Azure.", + "readOnly": true, + "x-ms-enum": { + "name": "CloudSuitability", + "modelAsString": true + } + }, + "suitabilityExplanation": { + "type": "string", + "enum": [ + "Unknown", + "NotApplicable", + "DiskSizeGreaterThanSupported", + "NoSuitableDiskSizeForIops", + "NoSuitableDiskSizeForThroughput", + "NoDiskSizeFoundInSelectedLocation", + "NoDiskSizeFoundForSelectedRedundancy", + "InternalErrorOccurredForDiskEvaluation" + ], + "description": "If disk is suitable, this explains the reasons and mitigation steps.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureDiskSuitabilityExplanation", + "modelAsString": true + } + } + } + }, + "AssessedNetworkAdapter": { + "type": "object", + "description": "A network adapter assessed for an assessment.", + "properties": { + "macAddress": { + "type": "string", + "description": "MAC Address of the network adapter.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "description": "List of IP Addresses on the network adapter.", + "readOnly": true, + "items": { + "type": "string", + "description": "IP Address of the network adapter.", + "readOnly": true + } + }, + "monthlyBandwidthCosts": { + "type": "number", + "format": "double", + "description": "Monthly cost estimate for network bandwidth used by this network adapter.", + "readOnly": true + }, + "megabytesPerSecondReceived": { + "type": "number", + "format": "double", + "description": "Adapter throughput for incoming traffic in MegaBytes per second.", + "readOnly": true + }, + "megabytesPerSecondReceivedDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected data points for incoming traffic in MegaBytes per second.", + "x-nullable": true, + "readOnly": true + }, + "megabytesPerSecondOfReadDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received data points for incoming traffic in MegaBytes per second.", + "x-nullable": true, + "readOnly": true + }, + "megabytesPerSecondTransmitted": { + "type": "number", + "format": "double", + "description": "Adapter throughput for outgoing traffic in MegaBytes per second.", + "readOnly": true + }, + "megabytesPerSecondTransmittedDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected data points for outgoing traffic in MegaBytes per second.", + "x-nullable": true, + "readOnly": true + }, + "megabytesPerSecondTransmittedDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received data points for outgoing traffic in MegaBytes per second.", + "x-nullable": true, + "readOnly": true + }, + "netGigabytesTransmittedPerMonth": { + "type": "number", + "format": "double", + "description": "Gigabytes transmitted through this adapter each month." + }, + "suitability": { + "type": "string", + "enum": [ + "Unknown", + "NotSuitable", + "Suitable", + "ConditionallySuitable", + "ReadinessUnknown" + ], + "description": "Whether this adapter is suitable for Azure.", + "readOnly": true, + "x-ms-enum": { + "name": "CloudSuitability", + "modelAsString": true + } + }, + "suitabilityExplanation": { + "type": "string", + "enum": [ + "Unknown", + "NotApplicable", + "InternalErrorOccured" + ], + "description": "If network adapter is suitable, this explains the reasons and mitigation steps.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureNetworkAdapterSuitabilityExplanation", + "modelAsString": true + } + } + } + }, + "AssessedMachine": { + "type": "object", + "x-ms-azure-resource": true, + "description": "A machine evaluated as part of an assessment.", + "properties": { + "id": { + "type": "string", + "description": "Path reference to this assessed machine. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the machine.", + "readOnly": true + }, + "eTag": { + "type": "string", + "description": "For optimistic concurrency control." + }, + "type": { + "type": "string", + "description": "Type of the object = [Microsoft.Migrate/projects/groups/assessments/assessedMachines].", + "readOnly": true + }, + "properties": { + "description": "Properties of an assessed machine.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AssessedMachineProperties" + } + } + }, + "AssessedMachineProperties": { + "type": "object", + "description": "Properties of an assessed machine.", + "properties": { + "groups": { + "type": "array", + "description": "List of references to the groups that the machine is member of.", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true, + "description": "Reference to a group that this machine is member of. /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}" + } + }, + "discoveredTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was discovered by Azure Migrate agent. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "bootType": { + "type": "string", + "description": "Boot type of the machine.", + "enum": [ + "Unknown", + "EFI", + "BIOS" + ], + "readOnly": true, + "x-ms-enum": { + "name": "MachineBootType", + "modelAsString": true + } + }, + "datacenterContainer": { + "type": "string", + "description": "Container defined in the management solution that this machine is part of in the datacenter.", + "readOnly": true + }, + "datacenterManagementServer": { + "type": "string", + "description": "Name of the server hosting the datacenter management solution.", + "readOnly": true + }, + "datacenterMachineId": { + "type": "string", + "description": "ID of the machine as tracked by the datacenter management solution.", + "readOnly": true + }, + "datacenterManagementServerId": { + "type": "string", + "description": "ID of the server hosting the datacenter management solution.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the machine", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "User readable name of the machine as defined by the user in their private datacenter.", + "readOnly": true + }, + "megabytesOfMemory": { + "type": "number", + "format": "double", + "description": "Memory in Megabytes.", + "readOnly": true + }, + "numberOfCores": { + "type": "integer", + "format": "int32", + "description": "Processor count.", + "readOnly": true + }, + "operatingSystem": { + "type": "string", + "description": "Operating System of the machine.", + "readOnly": true + }, + "monthlyBandwidthCost": { + "type": "number", + "format": "double", + "description": "Monthly network cost estimate for the network adapters that are attached to this machine as a group, for a 31-day month.", + "readOnly": true + }, + "monthlyStorageCost": { + "type": "number", + "format": "double", + "description": "Monthly storage cost estimate for the disks that are attached to this machine as a group, for a 31-day month.", + "readOnly": true + }, + "disks": { + "type": "object", + "description": "Dictionary of disks attached to the machine. Key is ID of disk. Value is a disk object.", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/AssessedDisk" + } + }, + "networkAdapters": { + "type": "object", + "description": "Dictionary of network adapters attached to the machine. Key is name of the adapter. Value is a network adapter object.", + "readOnly": true, + "additionalProperties": { + "$ref": "#/definitions/AssessedNetworkAdapter" + } + }, + "recommendedSize": { + "type": "string", + "enum": [ + "Unknown", + "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_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_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_F1", + "Standard_F2", + "Standard_F4", + "Standard_F8", + "Standard_F16", + "Standard_F1s", + "Standard_F2s", + "Standard_F4s", + "Standard_F8s", + "Standard_F16s", + "Standard_G1", + "Standard_G2", + "Standard_G3", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_H8", + "Standard_H16", + "Standard_H8m", + "Standard_H16m", + "Standard_H16r", + "Standard_H16mr", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s" + ], + "description": "Recommended Azure size for this machine.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureVmSize", + "modelAsString": true + } + }, + "numberOfCoresForRecommendedSize": { + "type": "integer", + "format": "int32", + "description": "Number of CPU cores in the Recommended Azure VM Size.", + "readOnly": true + }, + "megabytesOfMemoryForRecommendedSize": { + "type": "number", + "format": "double", + "description": "Megabytes of memory in the Recommended Azure VM Size.", + "readOnly": true + }, + "monthlyComputeCostForRecommendedSize": { + "type": "number", + "format": "double", + "description": "Compute Cost for a 31-day month, if the machine is migrated to Azure with the Recommended Size.", + "readOnly": true + }, + "percentageCoresUtilization": { + "type": "number", + "format": "double", + "description": "Utilization percentage of the processor core as observed in the private data center, in the Time Range selected on Assessment, reported as the Percentile value based on the percentile number selected in assessment.", + "readOnly": true + }, + "percentageMemoryUtilization": { + "type": "number", + "format": "double", + "description": "Utilization percentage of the memory as observed in the private data center, in the Time Range selected on Assessment, reported as the Percentile value based on the percentile number selected in assessment.", + "readOnly": true + }, + "percentageCoresUtilizationDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected data points for percentage of cores utilization.", + "x-nullable": true, + "readOnly": true + }, + "percentageCoresUtilizationDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received data points for percentage of cores utilization.", + "x-nullable": true, + "readOnly": true + }, + "percentageMemoryUtilizationDataPointsExpected": { + "type": "integer", + "format": "int32", + "description": "Expected data points for percentage of memory utilization.", + "x-nullable": true, + "readOnly": true + }, + "percentageMemoryUtilizationDataPointsReceived": { + "type": "integer", + "format": "int32", + "description": "Received data points for percentage of memory utilization.", + "x-nullable": true, + "readOnly": true + }, + "suitability": { + "type": "string", + "enum": [ + "Unknown", + "NotSuitable", + "Suitable", + "ConditionallySuitable", + "ReadinessUnknown" + ], + "description": "Whether machine is suitable for migration to Azure.", + "readOnly": true, + "x-ms-enum": { + "name": "CloudSuitability", + "modelAsString": true + } + }, + "suitabilityExplanation": { + "type": "string", + "enum": [ + "Unknown", + "NotApplicable", + "GuestOperatingSystemArchitectureNotSupported", + "GuestOperatingSystemNotSupported", + "BootTypeNotSupported", + "MoreDisksThanSupported", + "NoSuitableVmSizeFound", + "OneOrMoreDisksNotSuitable", + "OneOrMoreAdaptersNotSuitable", + "InternalErrorOccuredDuringComputeEvaluation", + "InternalErrorOccuredDuringStorageEvaluation", + "InternalErrorOccuredDuringNetworkEvaluation", + "NoVmSizeSupportsStoragePerformance", + "NoVmSizeSupportsNetworkPerformance", + "NoVmSizeForSelectedPricingTier", + "NoVmSizeForSelectedAzureLocation", + "CheckRedHatLinuxVersion", + "CheckOpenSuseLinuxVersion", + "CheckWindowsServer2008R2Version", + "CheckCentOsVersion", + "CheckDebianLinuxVersion", + "CheckSuseLinuxVersion", + "CheckOracleLinuxVersion", + "CheckUbuntuLinuxVersion", + "CheckCoreOsLinuxVersion", + "WindowsServerVersionConditionallySupported", + "NoGuestOperatingSystemConditionallySupported", + "WindowsClientVersionsConditionallySupported", + "BootTypeUnknown", + "GuestOperatingSystemUnknown", + "WindowsServerVersionsSupportedWithCaveat", + "WindowsOSNoLongerUnderMSSupport", + "EndorsedWithConditionsLinuxDistributions", + "UnendorsedLinuxDistributions", + "NoVmSizeForStandardPricingTier", + "NoVmSizeForBasicPricingTier" + ], + "description": "If machine is not ready to be migrated, this explains the reasons and mitigation steps.", + "readOnly": true, + "x-ms-enum": { + "name": "AzureVmSuitabilityExplanation", + "modelAsString": true + } + }, + "createdTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was created. Date-Time represented in ISO-8601 format.", + "readOnly": true + }, + "updatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Time when this machine was last updated. Date-Time represented in ISO-8601 format.", + "readOnly": true + } + } + }, + "ProjectKey": { + "type": "object", + "x-ms-azure-resource": true, + "description": "ID and Key for Migration Project.", + "properties": { + "workspaceId": { + "type": "string", + "description": "ID of Migration Project.", + "readOnly": true + }, + "workspaceKey": { + "type": "string", + "description": "Key of Migration Project.", + "readOnly": true + } + } + }, + "OperationDisplay": { + "type": "object", + "description": "Displayable properties of the operation.", + "readOnly": true, + "properties": { + "provider": { + "type": "string", + "description": "Provider of the operation.", + "readOnly": true + }, + "resource": { + "type": "string", + "description": "Resource operated on by the operation.", + "readOnly": true + }, + "operation": { + "type": "string", + "description": "Operation Type.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the operation.", + "readOnly": true + } + } + }, + "Operation": { + "type": "object", + "description": "A REST API operation supported by the provider.", + "properties": { + "name": { + "type": "string", + "description": "Name of the operation.", + "readOnly": true + }, + "display": { + "description": "Displayable properties of the operation.", + "$ref": "#/definitions/OperationDisplay" + }, + "origin": { + "type": "string", + "description": "Origin of the operation.", + "readOnly": true + } + } + }, + "DownloadUrl": { + "type": "object", + "description": "Download URL for assessment report.", + "properties": { + "assessmentReportUrl": { + "type": "string", + "description": "Hyperlink to download report.", + "readOnly": true + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "description": "Expiry date of download url.", + "readOnly": true + } + } + }, + "ProjectResultList": { + "type": "object", + "description": "List of projects.", + "properties": { + "value": { + "type": "array", + "description": "List of projects.", + "items": { + "$ref": "#/definitions/Project" + } + } + } + }, + "MachineResultList": { + "type": "object", + "description": "List of machines.", + "properties": { + "value": { + "type": "array", + "description": "List of machines.", + "items": { + "$ref": "#/definitions/Machine" + } + } + } + }, + "GroupResultList": { + "type": "object", + "description": "List of groups.", + "properties": { + "value": { + "type": "array", + "description": "List of groups.", + "items": { + "$ref": "#/definitions/Group" + } + } + } + }, + "AssessedMachineResultList": { + "type": "object", + "description": "List of assessed machines.", + "properties": { + "value": { + "description": "List of assessed machines.", + "type": "array", + "items": { + "$ref": "#/definitions/AssessedMachine" + } + } + } + }, + "AssessmentResultList": { + "type": "object", + "description": "List of assessments.", + "properties": { + "value": { + "type": "array", + "description": "List of assessments.", + "items": { + "$ref": "#/definitions/Assessment" + } + } + } + }, + "OperationResultList": { + "type": "object", + "description": "List of API operations.", + "properties": { + "value": { + "type": "array", + "description": "List of operations.", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Migrate/projects": { + "get": { + "summary": "Get all projects.", + "description": "Get all the projects in the resource group.", + "operationId": "Projects_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ProjectResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription or resource group)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Projects_List": { + "$ref": "./examples/Projects_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}": { + "get": { + "summary": "Get the specified project.", + "description": "Get the project with the specified name.", + "operationId": "Projects_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Get": { + "$ref": "./examples/Projects_Get.json" + } + } + }, + "put": { + "summary": "Create or update project.", + "description": "Create a project with specified name. If a project already exists, update it.", + "operationId": "Projects_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "name": "project", + "description": "New or Updated project object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Project" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing project updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "201": { + "description": "Created. New project was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "400": { + "description": "Bad Request (Read only settings of an existing project cannot be changed)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Create": { + "$ref": "./examples/Projects_Create.json" + } + } + }, + "patch": { + "summary": "Update project.", + "description": "Update a project with specified name. Supports partial updates, for example only tags can be provided.", + "operationId": "Projects_Update", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "name": "project", + "description": "Updated project object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Project" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing project updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Project" + } + }, + "400": { + "description": "Bad Request (Read only settings of an existing project cannot be changed)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, or nestName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Update": { + "$ref": "./examples/Projects_Update.json" + } + } + }, + "delete": { + "summary": "Delete the project", + "description": "Delete the project. Deleting non-existent project is a no-operation.", + "operationId": "Projects_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the group.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No project with specified name was found." + }, + "400": { + "description": "Bad request. (Invalid subscriptionId or resourceGroupName)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)" + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_Delete": { + "$ref": "./examples/Projects_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/keys": { + "post": { + "summary": "Get shared keys for the project.", + "description": "Gets the Log Analytics Workspace ID and Primary Key for the specified project.", + "operationId": "Projects_GetKeys", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/ProjectKey" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Projects_GetKeys": { + "$ref": "./examples/Projects_GetKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines": { + "get": { + "summary": "Get all machines in the project", + "description": "Get data of all the machines available in the project. Returns a json array of objects of type 'machine' defined in Models section.", + "operationId": "Machines_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of all machine objects.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/MachineResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Machines_ListByProject": { + "$ref": "./examples/Machines_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/machines/{machineName}": { + "get": { + "summary": "Get a specific machine.", + "description": "Get the machine with the specified name. Returns a json object of type 'machine' defined in Models section.", + "operationId": "Machines_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/machineName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns the machine with the specified name.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or machineName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Machines_Get": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups": { + "get": { + "summary": "Get all groups", + "description": "Get all groups created in the project. Returns a json array of objects of type 'group' as specified in the Models section.", + "operationId": "Groups_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of groups.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/GroupResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Groups_ListByProject": { + "$ref": "./examples/Groups_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}": { + "get": { + "summary": "Get a specific group.", + "description": "Get information related to a specific group in the project. Returns a json object of type 'group' as specified in the models section.", + "operationId": "Groups_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns the group with the specified name.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Group" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or groupName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Groups_Get": { + "$ref": "./examples/Groups_Get.json" + } + } + }, + "put": { + "summary": "Create a new group with specified settings. If group with the name provided already exists, then the existing group is updated.", + "description": "Create a new group by sending a json object of type 'group' as given in Models section as part of the Request Body. The group name in a project is unique. Labels can be applied on a group as part of creation.\n\nIf a group with the groupName specified in the URL already exists, then this call acts as an update.\n\nThis operation is Idempotent.\n", + "operationId": "Groups_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "group", + "description": "New or Updated Group object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Group" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing group updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Group" + } + }, + "201": { + "description": "Created. New group was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Group" + } + }, + "400": { + "description": "Bad Request (Read only settings of an existing group cannot be changed)." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Groups_Create": { + "$ref": "./examples/Groups_Create.json" + } + } + }, + "delete": { + "summary": "Delete the group", + "description": "Delete the group from the project. The machines remain in the project. Deleting a non-existent group results in a no-operation.\n\nA group is an aggregation mechanism for machines in a project. Therefore, deleting group does not delete machines in it.\n", + "operationId": "Groups_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the group.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No group with specified name was found." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)" + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName)" + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Groups_Delete": { + "$ref": "./examples/Groups_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments": { + "get": { + "summary": "Get all assessments created for the specified group.", + "description": "Get all assessments created for the specified group.\n\nReturns a json array of objects of type 'assessment' as specified in Models section.\n", + "operationId": "Assessments_ListByGroup", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of Assessment objects.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessmentResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, assessmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Assessments_ListByGroup": { + "$ref": "./examples/Assessments_ListByGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/assessments": { + "get": { + "summary": "Get all assessments created in the project.", + "description": "Get all assessments created in the project.\n\nReturns a json array of objects of type 'assessment' as specified in Models section.\n", + "operationId": "Assessments_ListByProject", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of Assessment objects.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessmentResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, assessmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Assessments_ListByProject": { + "$ref": "./examples/Assessments_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}": { + "get": { + "summary": "Get an assessment.", + "description": "Get an existing assessment with the specified name. Returns a json object of type 'assessment' as specified in Models section.", + "operationId": "Assessments_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns Assessment object.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Assessment" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or assesmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_Get": { + "$ref": "./examples/Assessments_Get.json" + } + } + }, + "put": { + "summary": "Create or Update assessment.", + "description": "Create a new assessment with the given name and the specified settings. Since name of an assessment in a project is a unique identiefier, if an assessment with the name provided already exists, then the existing assessment is updated.\n\nAny PUT operation, resulting in either create or update on an assessment, will cause the assessment to go in a \"InProgress\" state. This will be indicated by the field 'computationState' on the Assessment object. During this time no other PUT operation will be allowed on that assessment object, nor will a Delete operation. Once the computation for the assessment is complete, the field 'computationState' will be updated to 'Ready', and then other PUT or DELETE operations can happen on the assessment.\n\nWhen assessment is under computation, any PUT will lead to a 400 - Bad Request error.\n", + "operationId": "Assessments_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "assessment", + "description": "New or Updated Assessment object.", + "in": "body", + "schema": { + "$ref": "#/definitions/Assessment" + } + } + ], + "responses": { + "200": { + "description": "OK. Existing assessment updated.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Assessment" + } + }, + "201": { + "description": "Created. New assessment was created.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/Assessment" + } + }, + "400": { + "description": "Bad Request. Assessment is under computation and cannot be updated yet." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_Create": { + "$ref": "./examples/Assessments_Create.json" + } + } + }, + "delete": { + "summary": "Deletes an assessment from the project.", + "description": "Delete an assessment from the project. The machines remain in the assessment. Deleting a non-existent assessment results in a no-operation.\n\nWhen an assessment is under computation, as indicated by the 'computationState' field, it cannot be deleted. Any such attempt will return a 400 - Bad Request.\n", + "operationId": "Assessments_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Deleted the assessment.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + } + }, + "204": { + "description": "No content. No assessment with specified name was found." + }, + "400": { + "description": "Bad Request. Assessment is under computation and cannot be deleted yet." + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)" + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_Delete": { + "$ref": "./examples/Assessments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/downloadUrl": { + "post": { + "summary": "Get download URL for the assessment report.", + "description": "Get the URL for downloading the assessment in a report format.", + "operationId": "Assessments_GetReportDownloadUrl", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/acceptLanguage" + } + ], + "responses": { + "200": { + "description": "OK.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "Assessments_GetReportDownloadUrl": { + "$ref": "./examples/Assessments_GetReportDownloadUrl.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/assessedMachines": { + "get": { + "summary": "Get assessed machines for assessment.", + "description": "Get list of machines that assessed as part of the specified assessment. Returns a json array of objects of type 'assessedMachine' as specified in the Models section.\n\nWhenever an assessment is created or updated, it goes under computation. During this phase, the 'status' field of Assessment object reports 'Computing'.\nDuring the period when the assessment is under computation, the list of assessed machines is empty and no assessed machines are returned by this call.\n", + "operationId": "AssessedMachines_ListByAssessment", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns list of machines with their assessment data in the assessment.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessedMachineResultList" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, or assessmentName)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "AssessedMachines_ListByAssessment": { + "$ref": "./examples/AssessedMachines_ListByAssessment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/projects/{projectName}/groups/{groupName}/assessments/{assessmentName}/assessedMachines/{assessedMachineName}": { + "get": { + "summary": "Get an assessed machine.", + "description": "Get an assessed machine with its size & cost estimnate that was evaluated in the specified assessment.", + "operationId": "AssessedMachines_Get", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/projectName" + }, + { + "$ref": "#/parameters/groupName" + }, + { + "$ref": "#/parameters/assessmentName" + }, + { + "$ref": "#/parameters/assessedMachineName" + }, + { + "$ref": "#/parameters/acceptLanguage" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. Returns a specific assessed machine.", + "headers": { + "x-ms-request-id": { + "type": "string", + "description": "Service generated Request ID." + } + }, + "schema": { + "$ref": "#/definitions/AssessedMachine" + } + }, + "401": { + "description": "Not authorized (No access to subscription, resource group, or project)." + }, + "404": { + "description": "Not found (Invalid subscriptionId, resourceGroupName, projectName, groupName, assessmentName, or machineId)." + }, + "500": { + "description": "Internal Server Error." + }, + "503": { + "description": "Service Unavailable." + } + }, + "x-ms-examples": { + "AssessedMachines_Get": { + "$ref": "./examples/AssessedMachines_Get.json" + } + } + } + }, + "/providers/Microsoft.Migrate/operations": { + "get": { + "summary": "Get list of operations supported in the API.", + "description": "Get a list of REST API supported by Microsoft.Migrate provider.", + "operationId": "Operations_List", + "responses": { + "200": { + "description": "OK. Returns list of operations.", + "schema": { + "$ref": "#/definitions/OperationResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/migrate/resource-manager/readme.md b/specification/migrate/resource-manager/readme.md new file mode 100644 index 000000000000..4570a7c09e50 --- /dev/null +++ b/specification/migrate/resource-manager/readme.md @@ -0,0 +1,38 @@ +# Azure Migrate + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Migrate. + +--- +## Getting Started +To build the SDK for Migrate, 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 API. + +``` yaml +openapi-type: arm +tag: package-2018-02 +``` + + +### Tag: package-2018-02 + +These settings apply only when `--tag=package-2018-02` is specified on the command line. + +``` yaml $(tag) == 'package-2018-02' +input-file: +- Microsoft.Migrate/2018-02-02/migrate.json +``` \ No newline at end of file diff --git a/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metricDefinitions_API.json b/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metricDefinitions_API.json index 4ce7202cc364..a497924351d5 100644 --- a/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metricDefinitions_API.json +++ b/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metricDefinitions_API.json @@ -242,12 +242,13 @@ "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, - "MetricNamespaceParameter": { + "MetricNamespaceParameter": { "name": "metricnamespace", "in": "query", "required": false, "type": "string", - "description": "Metric namespace to query metric definitions for." + "description": "Metric namespace to query metric definitions for.", + "x-ms-parameter-location": "method" } } } \ No newline at end of file diff --git a/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metrics_API.json b/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metrics_API.json index acfc986094db..415950a31efc 100644 --- a/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metrics_API.json +++ b/specification/monitor/resource-manager/microsoft.insights/stable/2018-01-01/metrics_API.json @@ -54,7 +54,7 @@ "$ref": "#/parameters/IntervalParameter" }, { - "$ref": "#/parameters/MetricParameter" + "$ref": "#/parameters/MetricNamesParameter" }, { "$ref": "#/parameters/AggregationsParameter" @@ -316,12 +316,12 @@ "description": "The interval (i.e. timegrain) of the query.", "x-ms-parameter-location": "method" }, - "MetricParameter": { - "name": "metric", + "MetricNamesParameter": { + "name": "metricnames", "in": "query", "required": false, "type": "string", - "description": "The name of the metric to retrieve.", + "description": "The names of the metrics (comma separated) to retrieve.", "x-ms-parameter-location": "method" }, "AggregationsParameter": { @@ -336,7 +336,7 @@ "name": "top", "in": "query", "required": false, - "type": "number", + "type": "integer", "format": "int32", "description": "The maximum number of records to retrieve.\nValid only if $filter is specified.\nDefaults to 10.", "x-ms-parameter-location": "method" @@ -372,12 +372,13 @@ "type": "string", "description": "Client Api Version." }, - "MetricNamespaceParameter": { + "MetricNamespaceParameter": { "name": "metricnamespace", "in": "query", "required": false, "type": "string", - "description": "Metric namespace to query metric definitions for." + "description": "Metric namespace to query metric definitions for.", + "x-ms-parameter-location": "method" } } } \ No newline at end of file diff --git a/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/actionGroups_API.json b/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/actionGroups_API.json index d8dfb30327cf..6c3d3e443af9 100644 --- a/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/actionGroups_API.json +++ b/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/actionGroups_API.json @@ -472,6 +472,13 @@ "$ref": "#/definitions/LogicAppReceiver" }, "description": "The list of logic app receivers that are part of this action group." + }, + "azureFunctionReceivers": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFunctionReceiver" + }, + "description": "The list of azure function receivers that are part of this action group." } }, "required": [ @@ -673,6 +680,33 @@ "callbackUrl" ] }, + "AzureFunctionReceiver": { + "description": "An azure function receiver.", + "properties": { + "name": { + "type": "string", + "description": "The name of the azure function receiver. Names must be unique across all receivers within an action group." + }, + "functionAppResourceId": { + "type": "string", + "description": "The azure resource id of the function app." + }, + "functionName": { + "type": "string", + "description": "The function name in the function app." + }, + "httpTriggerUrl": { + "type": "string", + "description": "The http trigger url where http request sent to." + } + }, + "required": [ + "name", + "functionAppResourceId", + "functionName", + "httpTriggerUrl" + ] + }, "ReceiverStatus": { "type": "string", "enum": [ diff --git a/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/examples/createOrUpdateActionGroup.json b/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/examples/createOrUpdateActionGroup.json index 83b798788153..5fcb558496b9 100644 --- a/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/examples/createOrUpdateActionGroup.json +++ b/specification/monitor/resource-manager/microsoft.insights/stable/2018-03-01/examples/createOrUpdateActionGroup.json @@ -76,6 +76,14 @@ "resourceId": "/subscriptions/187f412d-1758-44d9-b052-169e2564721d/resourceGroups/LogicApp/providers/Microsoft.Logic/workflows/testLogicApp", "callbackUrl": "https://prod-27.northcentralus.logic.azure.com/workflows/68e572e818e5457ba898763b7db90877/triggers/manual/paths/invoke/azns/test?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=Abpsb72UYJxPPvmDo937uzofupO5r_vIeWEx7KVHo7w" } + ], + "azureFunctionReceivers": [ + { + "name": "Sample azureFunction", + "functionAppResourceId": "/subscriptions/5def922a-3ed4-49c1-b9fd-05ec533819a3/resourceGroups/aznsTest/providers/Microsoft.Web/sites/testFunctionApp", + "functionName": "HttpTriggerCSharp1", + "httpTriggerUrl": "https://testfunctionapp.azurewebsites.net/api/HttpTriggerCSharp1?code=4CopFfiXqUQC8dvIM7F53J7tIU3Gy9QQIG/vKAXMe2avhHqK3/jVYw==" + } ] } } @@ -162,6 +170,14 @@ "resourceId": "/subscriptions/187f412d-1758-44d9-b052-169e2564721d/resourceGroups/LogicApp/providers/Microsoft.Logic/workflows/testLogicApp", "callbackUrl": "https://prod-27.northcentralus.logic.azure.com/workflows/68e572e818e5457ba898763b7db90877/triggers/manual/paths/invoke/azns/test?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=Abpsb72UYJxPPvmDo937uzofupO5r_vIeWEx7KVHo7w" } + ], + "azureFunctionReceivers": [ + { + "name": "Sample azureFunction", + "functionAppResourceId": "/subscriptions/5def922a-3ed4-49c1-b9fd-05ec533819a3/resourceGroups/aznsTest/providers/Microsoft.Web/sites/testFunctionApp", + "functionName": "HttpTriggerCSharp1", + "httpTriggerUrl": "https://testfunctionapp.azurewebsites.net/api/HttpTriggerCSharp1?code=4CopFfiXqUQC8dvIM7F53J7tIU3Gy9QQIG/vKAXMe2avhHqK3/jVYw==" + } ] } } @@ -247,6 +263,14 @@ "resourceId": "/subscriptions/187f412d-1758-44d9-b052-169e2564721d/resourceGroups/LogicApp/providers/Microsoft.Logic/workflows/testLogicApp", "callbackUrl": "https://prod-27.northcentralus.logic.azure.com/workflows/68e572e818e5457ba898763b7db90877/triggers/manual/paths/invoke/azns/test?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=Abpsb72UYJxPPvmDo937uzofupO5r_vIeWEx7KVHo7w" } + ], + "azureFunctionReceivers": [ + { + "name": "Sample azureFunction", + "functionAppResourceId": "/subscriptions/5def922a-3ed4-49c1-b9fd-05ec533819a3/resourceGroups/aznsTest/providers/Microsoft.Web/sites/testFunctionApp", + "functionName": "HttpTriggerCSharp1", + "httpTriggerUrl": "https://testfunctionapp.azurewebsites.net/api/HttpTriggerCSharp1?code=4CopFfiXqUQC8dvIM7F53J7tIU3Gy9QQIG/vKAXMe2avhHqK3/jVYw==" + } ] } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/CheckNameAvailability.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..fcad6babede5 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "nameAvailabilityRequest": { + "name": "name1", + "type": "Microsoft.DBforMySQL" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "message": "", + "reason": "" + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationCreateOrUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationCreateOrUpdate.json new file mode 100644 index 000000000000..bb88477ecfcd --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationCreateOrUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "configurationName": "array_nulls", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "value": "off", + "source": "user-override" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "off", + "description": "Enable input of NULL elements in arrays.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "user-override" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforMySQL/servers/configurations" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationGet.json new file mode 100644 index 000000000000..f5ddd514a211 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "configurationName": "array_nulls", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "on", + "description": "Enable input of NULL elements in arrays.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforMySQL/servers/configurations" + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationListByServer.json new file mode 100644 index 000000000000..423e430da94f --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ConfigurationListByServer.json @@ -0,0 +1,588 @@ +{ + "parameters": { + "serverName": "mysql56cdb50", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "value": "OFF", + "description": "Indicates the status of the Event Scheduler.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF,DISABLED", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/event_scheduler", + "name": "event_scheduler", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "4", + "description": "Number of digits by which to increase the scale of the result of division operations.", + "defaultValue": "4", + "dataType": "Integer", + "allowedValues": "0-30", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/div_precision_increment", + "name": "div_precision_increment", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "1024", + "description": "Maximum allowed result length in bytes for the GROUP_CONCAT().", + "defaultValue": "1024", + "dataType": "Integer", + "allowedValues": "4-16777216", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/group_concat_max_len", + "name": "group_concat_max_len", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "ON", + "description": "Whether innodb adaptive hash indexes are enabled or disabled.", + "defaultValue": "ON", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_adaptive_hash_index", + "name": "innodb_adaptive_hash_index", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "50", + "description": "The length of time in seconds an InnoDB transaction waits for a row lock before giving up.", + "defaultValue": "50", + "dataType": "Integer", + "allowedValues": "1-3600", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_lock_wait_timeout", + "name": "innodb_lock_wait_timeout", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "1800", + "description": "Number of seconds the server waits for activity on an interactive connection before closing it.", + "defaultValue": "1800", + "dataType": "Integer", + "allowedValues": "10-1800", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/interactive_timeout", + "name": "interactive_timeout", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "Logs queries that are expected to retrieve all rows to slow query log.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/log_queries_not_using_indexes", + "name": "log_queries_not_using_indexes", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Limits the number of such queries per minute that can be written to the slow query log.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-4294967295", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/log_throttle_queries_not_using_indexes", + "name": "log_throttle_queries_not_using_indexes", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "Include slow administrative statements in the statements written to the slow query log.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/log_slow_admin_statements", + "name": "log_slow_admin_statements", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "When the slow query log is enabled, this variable enables logging for queries that have taken more than long_query_time seconds to execute on the slave.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/log_slow_slave_statements", + "name": "log_slow_slave_statements", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "This variable applies when binary logging is enabled. It controls whether stored function creators can be trusted not to create stored functions that will cause unsafe events to be written to the binary log.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/log_bin_trust_function_creators", + "name": "log_bin_trust_function_creators", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "10", + "description": "If a query takes longer than this many seconds, the server increments the Slow_queries status variable.", + "defaultValue": "10", + "dataType": "Numeric", + "allowedValues": "0-1E+100", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/long_query_time", + "name": "long_query_time", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Can be used to cause queries which examine fewer than the stated number of rows not to be logged.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-18446744073709551615", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/min_examined_row_limit", + "name": "min_examined_row_limit", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "Enable or disable the slow query log", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/slow_query_log", + "name": "slow_query_log", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "", + "description": "The current server SQL mode.", + "defaultValue": "", + "dataType": "Set", + "allowedValues": ",ALLOW_INVALID_DATES,ANSI_QUOTES,ERROR_FOR_DIVISION_BY_ZERO,HIGH_NOT_PRECEDENCE,IGNORE_SPACE,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_BACKSLASH_ESCAPES,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION,NO_FIELD_OPTIONS,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_UNSIGNED_SUBTRACTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY,PAD_CHAR_TO_FULL_LENGTH,PIPES_AS_CONCAT,REAL_AS_FLOAT,STRICT_ALL_TABLES,STRICT_TRANS_TABLES", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/sql_mode", + "name": "sql_mode", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "120", + "description": "The number of seconds the server waits for activity on a noninteractive connection before closing it.", + "defaultValue": "120", + "dataType": "Integer", + "allowedValues": "60-86400", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/wait_timeout", + "name": "wait_timeout", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "120", + "description": "The number of seconds the server waits for network reading action, especially for LOAD DATA LOCAL FILE.", + "defaultValue": "120", + "dataType": "Integer", + "allowedValues": "10-3600", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/net_read_timeout", + "name": "net_read_timeout", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "240", + "description": "The number of seconds the server waits for network writing action, especially for LOAD DATA LOCAL FILE.", + "defaultValue": "240", + "dataType": "Integer", + "allowedValues": "10-3600", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/net_write_timeout", + "name": "net_write_timeout", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "1880975364", + "description": "The server ID, used in replication to give each master and slave a unique identity.", + "defaultValue": "1000", + "dataType": "Integer", + "allowedValues": "1000-4294967295", + "source": "user-override" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/server_id", + "name": "server_id", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "536870912", + "description": "The maximum size of one packet or any generated/intermediate string, or any parameter sent by the mysql_stmt_send_long_data() C API function.", + "defaultValue": "536870912", + "dataType": "Integer", + "allowedValues": "1024-1073741824", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/max_allowed_packet", + "name": "max_allowed_packet", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "60", + "description": "The number of seconds to wait for more data from the master before the slave considers the connection broken, aborts the read, and tries to reconnect.", + "defaultValue": "60", + "dataType": "Integer", + "allowedValues": "30-3600", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/slave_net_timeout", + "name": "slave_net_timeout", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "SYSTEM", + "description": "The server time zone", + "defaultValue": "SYSTEM", + "dataType": "String", + "allowedValues": "[+|-][0]{0,1}[0-9]:[0-5][0-9]|[+|-][1][0-2]:[0-5][0-9]|SYSTEM", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/time_zone", + "name": "time_zone", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "latin1", + "description": "Use charset_name as the default server character set.", + "defaultValue": "latin1", + "dataType": "Enumeration", + "allowedValues": "BIG5,DEC8,CP850,HP8,KOI8R,LATIN1,LATIN2,SWE7,ASCII,UJIS,SJIS,HEBREW,TIS620,EUCKR,KOI8U,GB2312,GREEK,CP1250,GBK,LATIN5,ARMSCII8,UTF8,UCS2,CP866,KEYBCS2,MACCE,MACROMAN,CP852,LATIN7,UTF8MB4,CP1251,UTF16,CP1256,CP1257,UTF32,BINARY,GEOSTD8,CP932,EUCJPMS", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/character_set_server", + "name": "character_set_server", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "262144", + "description": "The minimum size of the buffer that is used for plain index scans, range index scans, and joins that do not use indexes and thus perform full table scans.", + "defaultValue": "262144", + "dataType": "Integer", + "allowedValues": "128-2097152", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/join_buffer_size", + "name": "join_buffer_size", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "2000", + "description": "The number of open tables for all threads.", + "defaultValue": "2000", + "dataType": "Integer", + "allowedValues": "1-4000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/table_open_cache", + "name": "table_open_cache", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "InnoDB stores the data and indexes for each newly created table in a separate .ibd file instead of the system tablespace.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_file_per_table", + "name": "innodb_file_per_table", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "1", + "description": "If set to 1, table names are stored in lowercase on disk and comparisons are not case sensitive. If set to 2, table names are stored as given but compared in lowercase.", + "defaultValue": "1", + "dataType": "Enumeration", + "allowedValues": "1,2", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/lower_case_table_names", + "name": "lower_case_table_names", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "This option places an upper limit on the total size in bytes of all relay logs on the slave.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/slave_compressed_protocol", + "name": "slave_compressed_protocol", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "200", + "description": "Sets an upper limit on I/O activity performed by InnoDB background tasks, such as flushing pages from the buffer pool and merging data from the change buffer.", + "defaultValue": "200", + "dataType": "Integer", + "allowedValues": "100-1500", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_io_capacity", + "name": "innodb_io_capacity", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "4", + "description": "The number of I/O threads for read operations in InnoDB.", + "defaultValue": "4", + "dataType": "Integer", + "allowedValues": "1-64", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_read_io_threads", + "name": "innodb_read_io_threads", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "InnoDB tries to keep the number of operating system threads concurrently inside InnoDB less than or equal to the limit given by this variable.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-1000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_thread_concurrency", + "name": "innodb_thread_concurrency", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "4", + "description": "The number of I/O threads for write operations in InnoDB.", + "defaultValue": "4", + "dataType": "Integer", + "allowedValues": "1-64", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_write_io_threads", + "name": "innodb_write_io_threads", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "8388608", + "description": "he size in bytes of a memory pool InnoDB uses to store data dictionary information and other internal data structures.", + "defaultValue": "8388608", + "dataType": "Integer", + "allowedValues": "5242880-52428800", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_additional_mem_pool_size", + "name": "innodb_additional_mem_pool_size", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "134217728", + "description": "Specifies an upper limit on the size of the temporary log files used during online DDL operations for InnoDB tables.", + "defaultValue": "134217728", + "dataType": "Integer", + "allowedValues": "65536-2147483648", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_online_alter_log_max_size", + "name": "innodb_online_alter_log_max_size", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "", + "description": "A string to be executed by the server for each client that connects.", + "defaultValue": "", + "dataType": "String", + "allowedValues": "", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/init_connect", + "name": "init_connect", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "REPEATABLE-READ", + "description": "The default transaction isolation level.", + "defaultValue": "REPEATABLE-READ", + "dataType": "Enumeration", + "allowedValues": "READ-UNCOMMITTED,READ-COMMITTED,REPEATABLE-READ,SERIALIZABLE", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/tx_isolation", + "name": "tx_isolation", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "10", + "description": "This variable indicates the number of equality ranges in an equality comparison condition when the optimizer should switch from using index dives to index statistics in estimating the number of qualifying rows.", + "defaultValue": "10", + "dataType": "Integer", + "allowedValues": "0-4294967295", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/eq_range_index_dive_limit", + "name": "eq_range_index_dive_limit", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "37", + "description": "Specifies the approximate percentage of the InnoDB buffer pool used for the old block sublist.", + "defaultValue": "37", + "dataType": "Integer", + "allowedValues": "5-95", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_old_blocks_pct", + "name": "innodb_old_blocks_pct", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "1000", + "description": "Non-zero values protect against the buffer pool being filled by data that is referenced only for a brief period, such as during a full table scan.", + "defaultValue": "1000", + "dataType": "Integer", + "allowedValues": "0-4294967295", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_old_blocks_time", + "name": "innodb_old_blocks_time", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "56", + "description": "Controls the sensitivity of linear read-ahead that InnoDB uses to prefetch pages into the buffer pool.", + "defaultValue": "56", + "dataType": "Integer", + "allowedValues": "0-64", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_read_ahead_threshold", + "name": "innodb_read_ahead_threshold", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "1024", + "description": "The cutoff on the size of index values that determines which filesort algorithm to use.", + "defaultValue": "1024", + "dataType": "Integer", + "allowedValues": "4-8388608", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/max_length_for_sort_data", + "name": "max_length_for_sort_data", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "100", + "description": "If more than this many successive connection requests from a host are interrupted without a successful connection, the server blocks that host from further connections.", + "defaultValue": "100", + "dataType": "Integer", + "allowedValues": "1-18446744073709551615", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/max_connect_errors", + "name": "max_connect_errors", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "10000", + "description": "Defines how long InnoDB threads sleep before joining the InnoDB queue, in microseconds.", + "defaultValue": "10000", + "dataType": "Integer", + "allowedValues": "0-1000000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_thread_sleep_delay", + "name": "innodb_thread_sleep_delay", + "type": "Microsoft.DBforMySQL/servers/configurations" + }, + { + "properties": { + "value": "Antelope", + "description": "Indicates the InnoDB file format for file-per-table tablespaces.", + "defaultValue": "Antelope", + "dataType": "Enumeration", + "allowedValues": "Antelope,Barracuda", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/mysql56cdb50/configurations/innodb_file_format", + "name": "innodb_file_format", + "type": "Microsoft.DBforMySQL/servers/configurations" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseCreate.json new file mode 100644 index 000000000000..c8bde488a376 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "charset":"UTF8", + "collation":"English_United States.1252" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseDelete.json new file mode 100644 index 000000000000..de60cc340354 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseGet.json new file mode 100644 index 000000000000..98ee7be84291 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseListByServer.json new file mode 100644 index 000000000000..292e1ba8a674 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/DatabaseListByServer.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup-preview", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db2", + "name": "db2", + "type": "Microsoft.DBforMySQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleCreate.json new file mode 100644 index 000000000000..9f749c46fcaa --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "startIpAddress":"0.0.0.0", + "endIpAddress":"255.255.255.255" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforMySQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforMySQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleDelete.json new file mode 100644 index 000000000000..9bd78a018f7d --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleGet.json new file mode 100644 index 000000000000..399a1ea5b114 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforMySQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleListByServer.json new file mode 100644 index 000000000000..3b00d3c2bbd0 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/FirewallRuleListByServer.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforMySQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule2", + "name": "rule2", + "type": "Microsoft.DBforMySQL/servers/firewallRules", + "properties": { + "startIpAddress": "1.0.0.0", + "endIpAddress": "255.0.0.0" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/LogFileListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/LogFileListByServer.json new file mode 100644 index 000000000000..9b33651dab2a --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/LogFileListByServer.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "name": "postgresql-2017-06-22_010000.log", + "sizeInKB": 4, + "createdTime": "0001-01-01T00:00:00+00:00", + "lastModifiedTime": "2017-06-22T01:59:36+00:00", + "type": "text", + "url": "https://wasd2stageneu1btlm4.file.core.windows.net/42679871f6cc4302b39ab9c2e3044df3/pg_log/postgresql-2017-06-22_010000.log?sv=2015-04-05&sr=f&sig=gqIQsa6VyGyUNpzYYPWLP5gM%2BeF1so9GYbHKu6Zs0DM%3D&se=2017-06-22T03%3A21%3A09Z&sp=r" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/logFiles/postgresql-2017-06-22_010000.log", + "name": "postgresql-2017-06-22_010000.log", + "type": "Microsoft.DBforMySQL/servers/logFiles" + }, + { + "properties": { + "name": "postgresql-2017-06-22_020000.log", + "sizeInKB": 1, + "createdTime": "0001-01-01T00:00:00+00:00", + "lastModifiedTime": "2017-06-22T02:19:36+00:00", + "type": "text", + "url": "https://wasd2stageneu1btlm4.file.core.windows.net/42679871f6cc4302b39ab9c2e3044df3/pg_log/postgresql-2017-06-22_020000.log?sv=2015-04-05&sr=f&sig=i99UWBlYfR0tKaxix8yHAOnfym4HV9Auto6BbZogyRs%3D&se=2017-06-22T03%3A21%3A09Z&sp=r" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/logFiles/postgresql-2017-06-22_020000.log", + "name": "postgresql-2017-06-22_020000.log", + "type": "Microsoft.DBforMySQL/servers/logFiles" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/OperationList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/OperationList.json new file mode 100644 index 000000000000..c2185d968e99 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/OperationList.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DBforMySQL/locations/performanceTiers/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Performance Tiers", + "operation": "List Performance Tiers", + "description": "Returns the list of Performance Tiers available." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "List/Get PostgreSQL Servers", + "description": "Return the list of servers or gets the properties for the specified server." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/write", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "Create/Update PostgreSQL Server", + "description": "Creates a server with the specified parameters or update the properties or tags for the specified server." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/delete", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "Delete PostgreSQL Server", + "description": "Deletes an existing server." + } + }, + { + "name": "Microsoft.DBforMySQL/performanceTiers/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Performance Tiers", + "operation": "List Performance Tiers", + "description": "Returns the list of Performance Tiers available." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/firewallRules/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "List/Get Firewall Rules", + "description": "Return the list of firewall rules for a server or gets the properties for the specified firewall rule." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/firewallRules/write", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "Create/Update Firewall Rule", + "description": "Creates a firewall rule with the specified parameters or update an existing rule." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/firewallRules/delete", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "Delete Firewall Rule", + "description": "Deletes an existing firewall rule." + } + }, + { + "name": "Microsoft.DBforMySQL/servers/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Database Metric Definition", + "operation": "Get database metric definitions", + "description": "Return types of metrics that are available for databases" + }, + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "cpu_percent", + "displayName": "CPU percent", + "displayDescription": "CPU percent", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "compute_limit", + "displayName": "Compute Unit limit", + "displayDescription": "Compute Unit limit", + "unit": "Count", + "aggregationType": "Average" + }, + { + "name": "compute_consumption_percent", + "displayName": "Compute Unit percentage", + "displayDescription": "Compute Unit percentage", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "memory_percent", + "displayName": "Memory percent", + "displayDescription": "Memory percent", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "io_consumption_percent", + "displayName": "IO percent", + "displayDescription": "IO percent", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "storage_percent", + "displayName": "Storage percentage", + "displayDescription": "Storage percentage", + "unit": "Percent", + "aggregationType": "Average" + }, + { + "name": "storage_used", + "displayName": "Storage used", + "displayDescription": "Storage used", + "unit": "Bytes", + "aggregationType": "Average" + }, + { + "name": "storage_limit", + "displayName": "Storage limit", + "displayDescription": "Storage limit", + "unit": "Bytes", + "aggregationType": "Average" + }, + { + "name": "active_connections", + "displayName": "Total active connections", + "displayDescription": "Total active connections", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "connections_failed", + "displayName": "Total failed connections", + "displayDescription": "Total failed connections", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": true + } + ] + } + } + }, + { + "name": "Microsoft.DBforMySQL/servers/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Database Metric Definition", + "operation": "Read diagnostic setting", + "description": "Gets the disagnostic setting for the resource" + } + }, + { + "name": "Microsoft.DBforMySQL/servers/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Database Metric Definition", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/PerformanceTiersListByLocation.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/PerformanceTiersListByLocation.json new file mode 100644 index 000000000000..31c938f6aa34 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/PerformanceTiersListByLocation.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "Basic", + "serviceLevelObjectives": [ + { + "edition": "Basic", + "vCore": 1, + "hardwareGeneration": "Gen4", + "id": "B_Gen4_1" + }, + { + "edition": "Basic", + "vCore": 2, + "hardwareGeneration": "Gen4", + "id": "B_Gen4_2" + }, + { + "edition": "Basic", + "vCore": 1, + "hardwareGeneration": "Gen5", + "id": "B_Gen5_1" + }, + { + "edition": "Basic", + "vCore": 2, + "hardwareGeneration": "Gen5", + "id": "B_Gen5_2" + } + ], + "minStorageMB": 5120, + "maxStorageMB": 1048576, + "minBackupRetentionDays": 7, + "maxBackupRetentionDays": 35 + }, + { + "id": "GeneralPurpose", + "serviceLevelObjectives": [ + { + "edition": "GeneralPurpose", + "vCore": 2, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_2" + }, + { + "edition": "GeneralPurpose", + "vCore": 4, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_4" + }, + { + "edition": "GeneralPurpose", + "vCore": 8, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_8" + }, + { + "edition": "GeneralPurpose", + "vCore": 16, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_16" + }, + { + "edition": "GeneralPurpose", + "vCore": 32, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_32" + }, + { + "edition": "GeneralPurpose", + "vCore": 2, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_2" + }, + { + "edition": "GeneralPurpose", + "vCore": 4, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_4" + }, + { + "edition": "GeneralPurpose", + "vCore": 8, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_8" + }, + { + "edition": "GeneralPurpose", + "vCore": 16, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_16" + }, + { + "edition": "GeneralPurpose", + "vCore": 32, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_32" + } + ], + "minStorageMB": 5120, + "maxStorageMB": 2097152, + "minBackupRetentionDays": 7, + "maxBackupRetentionDays": 35 + }, + { + "id": "MemoryOptimized", + "serviceLevelObjectives": [ + { + "edition": "MemoryOptimized", + "vCore": 2, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_2" + }, + { + "edition": "MemoryOptimized", + "vCore": 4, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_4" + }, + { + "edition": "MemoryOptimized", + "vCore": 8, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_8" + }, + { + "edition": "MemoryOptimized", + "vCore": 16, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_16" + }, + { + "edition": "MemoryOptimized", + "vCore": 32, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_32" + } + ], + "minStorageMB": 5120, + "maxStorageMB": 2097152, + "minBackupRetentionDays": 7, + "maxBackupRetentionDays": 35 + } + ] + } + } + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..e334fed3f491 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "OneBox", + "properties": { + "administratorLogin": "cloudsa", + "administratorLoginPassword": "password", + "sslEnforcement": "Enabled", + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "createMode": "Default" + }, + "sku": { + "name": "B_Gen4_2", + "tier": "Basic", + "capacity": 2, + "family": "Gen4" + }, + "tags": { + "ElasticServer": "1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "tags": { + "elasticServer": "1" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "earliestRestoreDate": "2018-02-07T16:47:04.027+00:00" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "tags": { + "elasticServer": "1" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "earliestRestoreDate": "2018-02-07T16:47:04.027+00:00" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerDelete.json new file mode 100644 index 000000000000..17cf2924102c --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..9156d5b0de39 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "earliestRestoreDate": "2018-01-26T23:06:03.3217581+00:00", + "version": "5.6" + } + } + } + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..a9be15f3cb57 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "5.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver1", + "name": "testserver1", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "5.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver2", + "name": "testserver2", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "5.6" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerListByResourceGroup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerListByResourceGroup.json new file mode 100644 index 000000000000..3ac7ed8da39e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerListByResourceGroup.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "5.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver1", + "name": "testserver1", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "5.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver2", + "name": "testserver2", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "5.6" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerUpdate.json new file mode 100644 index 000000000000..8c11d5cfb79c --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerUpdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "administratorLoginPassword":"newpassword", + "sslEnforcement": "Disabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforMySQL/servers", + "location": "onebox", + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "tags": { + "elasticServer": "1" + }, + "properties": { + "administratorLogin": "cloudsa", + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "sslEnforcement": "Disabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com" + } + } + }, + "202": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..09959796f525 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json @@ -0,0 +1,1709 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, log files and configurations with new business model.", + "version": "2017-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.DBforMySQL/servers/{serverName}": { + "put": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Create", + "x-ms-examples": { + "ServerCreate": { + "$ref": "./examples/ServerCreate.json" + } + }, + "description": "Creates a new server or updates an existing server. The update action will overwrite the existing server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerForCreate" + }, + "description": "The required parameters for creating or updating a server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Update", + "x-ms-examples": { + "ServerUpdate": { + "$ref": "./examples/ServerUpdate.json" + } + }, + "description": "Updates an existing server. The request body can contain one to many of the properties present in the normal server definition.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerUpdateParameters" + }, + "description": "The required parameters for updating a server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Delete", + "x-ms-examples": { + "ServerDelete": { + "$ref": "./examples/ServerDelete.json" + } + }, + "description": "Deletes a server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Get", + "x-ms-examples": { + "ServerGet": { + "$ref": "./examples/ServerGet.json" + } + }, + "description": "Gets information about a server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers": { + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_ListByResourceGroup", + "x-ms-examples": { + "ServerListByResourceGroup": { + "$ref": "./examples/ServerListByResourceGroup.json" + } + }, + "description": "List all the servers in a given resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/servers": { + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_List", + "x-ms-examples": { + "ServerList": { + "$ref": "./examples/ServerList.json" + } + }, + "description": "List all the servers in a given subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/firewallRules/{firewallRuleName}": { + "put": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_CreateOrUpdate", + "x-ms-examples": { + "FirewallRuleCreate": { + "$ref": "./examples/FirewallRuleCreate.json" + } + }, + "description": "Creates a new firewall rule or updates an existing firewall rule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The required parameters for creating or updating a firewall rule." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Delete", + "x-ms-examples": { + "FirewallRuleDelete": { + "$ref": "./examples/FirewallRuleDelete.json" + } + }, + "description": "Deletes a server firewall rule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Get", + "x-ms-examples": { + "FirewallRuleGet": { + "$ref": "./examples/FirewallRuleGet.json" + } + }, + "description": "Gets information about a server firewall rule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/firewallRules": { + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_ListByServer", + "x-ms-examples": { + "FirewallRuleList": { + "$ref": "./examples/FirewallRuleListByServer.json" + } + }, + "description": "List all the firewall rules in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/databases/{databaseName}": { + "put": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "DatabaseCreate": { + "$ref": "./examples/DatabaseCreate.json" + } + }, + "description": "Creates a new database or updates an existing database.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The required parameters for creating or updating a database." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "operationId": "Databases_Delete", + "x-ms-examples": { + "DatabaseDelete": { + "$ref": "./examples/DatabaseDelete.json" + } + }, + "description": "Deletes a database.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Databases" + ], + "operationId": "Databases_Get", + "x-ms-examples": { + "DatabaseGet": { + "$ref": "./examples/DatabaseGet.json" + } + }, + "description": "Gets information about a database.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Database" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "operationId": "Databases_ListByServer", + "x-ms-examples": { + "DatabaseList": { + "$ref": "./examples/DatabaseListByServer.json" + } + }, + "description": "List all the databases in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/configurations/{configurationName}": { + "put": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_CreateOrUpdate", + "x-ms-examples": { + "ConfigurationCreateOrUpdate": { + "$ref": "./examples/ConfigurationCreateOrUpdate.json" + } + }, + "description": "Updates a configuration of a server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Configuration" + }, + "description": "The required parameters for updating a server configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_Get", + "x-ms-examples": { + "ConfigurationGet": { + "$ref": "./examples/ConfigurationGet.json" + } + }, + "description": "Gets information about a configuration of server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/configurations": { + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_ListByServer", + "x-ms-examples": { + "ConfigurationList": { + "$ref": "./examples/ConfigurationListByServer.json" + } + }, + "description": "List all the configurations in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/logFiles": { + "get": { + "tags": [ + "LogFiles" + ], + "operationId": "LogFiles_ListByServer", + "x-ms-examples": { + "LogFileList": { + "$ref": "./examples/LogFileListByServer.json" + } + }, + "description": "List all the log files in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogFileListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/locations/{locationName}/performanceTiers": { + "get": { + "tags": [ + "LocationBasedPerformanceTier" + ], + "operationId": "LocationBasedPerformanceTier_List", + "x-ms-examples": { + "PerformanceTiersList": { + "$ref": "./examples/PerformanceTiersListByLocation.json" + } + }, + "description": "List all the performance tiers at specified location in a given subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PerformanceTierListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "operationId": "CheckNameAvailability_Execute", + "x-ms-examples": { + "NameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "description": "Check the availability of name for resource", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "nameAvailabilityRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityRequest" + }, + "description": "The required parameters for checking if resource name is available." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + } + } + } + }, + "/providers/Microsoft.DBforMySQL/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "OperationList": { + "$ref": "./examples/OperationList.json" + } + }, + "description": "Lists all of the available REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + } + } + } + }, + "definitions": { + "ServerVersion": { + "type": "string", + "description": "The version of a server.", + "enum": [ + "5.6", + "5.7" + ], + "x-ms-enum": { + "name": "ServerVersion", + "modelAsString": true + } + }, + "SslEnforcement": { + "type": "string", + "description": "Enable ssl enforcement or not when connect to server.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "SslEnforcementEnum", + "modelAsString": false + } + }, + "ProxyResource": { + "description": "Resource properties.", + "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 + }, + "TrackedResource": { + "description": "Resource properties including location and tags for track resources.", + "properties": { + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "required": [ + "location" + ] + }, + "ServerProperties": { + "properties": { + "administratorLogin": { + "type": "string", + "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." + }, + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "Server version." + }, + "sslEnforcement": { + "$ref": "#/definitions/SslEnforcement", + "description": "Enable ssl enforcement or not when connect to server." + }, + "userVisibleState": { + "type": "string", + "description": "A state of a server that is visible to user.", + "enum": [ + "Ready", + "Dropping", + "Disabled" + ], + "x-ms-enum": { + "name": "ServerState", + "modelAsString": true + } + }, + "fullyQualifiedDomainName": { + "type": "string", + "description": "The fully qualified domain name of a server." + }, + "earliestRestoreDate": { + "type": "string", + "format": "date-time", + "description": "Earliest restore point creation time (ISO8601 format)" + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + } + }, + "description": "The properties of a server." + }, + "StorageProfile": { + "properties": { + "backupRetentionDays": { + "type": "integer", + "description": "Backup retention days for the server." + }, + "geoRedundantBackup": { + "type": "string", + "description": "Enable Geo-redundant or not for server backup.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "GeoRedundantBackup", + "modelAsString": true + } + }, + "storageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + } + }, + "description": "Storage Profile properties of a server" + }, + "ServerPropertiesForCreate": { + "discriminator": "createMode", + "required": [ + "createMode" + ], + "properties": { + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "Server version." + }, + "sslEnforcement": { + "$ref": "#/definitions/SslEnforcement", + "description": "Enable ssl enforcement or not when connect to server." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + }, + "createMode": { + "type": "string", + "description": "The mode to create a new server.", + "enum": [ + "Default", + "PointInTimeRestore" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + } + }, + "description": "The properties used to create a new server." + }, + "ServerPropertiesForDefaultCreate": { + "x-ms-discriminator-value": "Default", + "allOf": [ + { + "$ref": "#/definitions/ServerPropertiesForCreate" + } + ], + "properties": { + "administratorLogin": { + "type": "string", + "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." + }, + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + } + }, + "required": [ + "administratorLogin", + "administratorLoginPassword" + ], + "description": "The properties used to create a new server." + }, + "ServerPropertiesForRestore": { + "x-ms-discriminator-value": "PointInTimeRestore", + "allOf": [ + { + "$ref": "#/definitions/ServerPropertiesForCreate" + } + ], + "properties": { + "sourceServerId": { + "type": "string", + "description": "The source server id to restore from." + }, + "restorePointInTime": { + "type": "string", + "format": "date-time", + "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." + } + }, + "required": [ + "sourceServerId", + "restorePointInTime" + ], + "description": "The properties to a new server by restoring from a backup." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8." + }, + "tier": { + "type": "string", + "description": "The tier of the particular SKU, e.g. Basic.", + "enum": [ + "Basic", + "GeneralPurpose", + "MemoryOptimized" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "The scale up/out capacity, representing server's compute units." + }, + "size": { + "type": "string", + "description": "The size code, to be interpreted by resource as appropriate." + }, + "family": { + "type": "string", + "description": "The family of hardware." + } + }, + "description": "Billing information related properties of a server." + }, + "Server": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "$ref": "#/definitions/ServerProperties", + "x-ms-client-flatten": true, + "description": "Properties of the server." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "Represents a server." + }, + "ServerForCreate": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "$ref": "#/definitions/ServerPropertiesForCreate", + "x-ms-client-flatten": false, + "description": "Properties of the server." + }, + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "required": [ + "properties", + "location" + ], + "description": "Represents a server to be created." + }, + "ServerUpdateParameters": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "properties": { + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + }, + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + }, + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "The version of a server." + }, + "sslEnforcement": { + "$ref": "#/definitions/SslEnforcement", + "description": "Enable ssl enforcement or not when connect to server." + } + }, + "x-ms-client-flatten": true, + "description": "The properties that can be updated for a server." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "description": "Parameters allowd to update for a server." + }, + "ServerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Server" + }, + "description": "The list of servers" + } + }, + "description": "A list of servers." + }, + "FirewallRuleProperties": { + "properties": { + "startIpAddress": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "description": "The start IP address of the server firewall rule. Must be IPv4 format." + }, + "endIpAddress": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "description": "The end IP address of the server firewall rule. Must be IPv4 format." + } + }, + "required": [ + "startIpAddress", + "endIpAddress" + ], + "description": "The properties of a server firewall rule." + }, + "FirewallRule": { + "properties": { + "properties": { + "$ref": "#/definitions/FirewallRuleProperties", + "x-ms-client-flatten": true, + "description": "The properties of a firewall rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "required": [ + "properties" + ], + "description": "Represents a server firewall rule." + }, + "FirewallRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The list of firewall rules in a server." + } + }, + "description": "A list of firewall rules." + }, + "DatabaseProperties": { + "properties": { + "charset": { + "type": "string", + "description": "The charset of the database." + }, + "collation": { + "type": "string", + "description": "The collation of the database." + } + }, + "description": "The properties of a database." + }, + "Database": { + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "x-ms-client-flatten": true, + "description": "The properties of a database." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Represents a Database." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of databases housed in a server" + } + }, + "description": "A List of databases." + }, + "ConfigurationProperties": { + "properties": { + "value": { + "type": "string", + "description": "Value of the configuration." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Description of the configuration." + }, + "defaultValue": { + "type": "string", + "readOnly": true, + "description": "Default value of the configuration." + }, + "dataType": { + "type": "string", + "readOnly": true, + "description": "Data type of the configuration." + }, + "allowedValues": { + "type": "string", + "readOnly": true, + "description": "Allowed values of the configuration." + }, + "source": { + "type": "string", + "description": "Source of the configuration." + } + }, + "description": "The properties of a configuration." + }, + "Configuration": { + "properties": { + "properties": { + "$ref": "#/definitions/ConfigurationProperties", + "x-ms-client-flatten": true, + "description": "The properties of a configuration." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Represents a Configuration." + }, + "ConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Configuration" + }, + "description": "The list of server configurations." + } + }, + "description": "A list of server configurations." + }, + "OperationDisplay": { + "properties": { + "provider": { + "type": "string", + "readOnly": true, + "description": "Operation resource provider name." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "Resource on which the operation is performed." + }, + "operation": { + "type": "string", + "readOnly": true, + "description": "Localized friendly name for the operation." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Operation description." + } + }, + "description": "Display metadata associated with the operation." + }, + "Operation": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the operation being performed on this particular object." + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "readOnly": true, + "description": "The localized display information for this particular operation or action." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The intended executor of the operation.", + "enum": [ + "NotSpecified", + "user", + "system" + ], + "x-ms-enum": { + "name": "OperationOrigin", + "modelAsString": true + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true, + "x-ms-client-flatten": false, + "description": "Additional descriptions for the operation." + } + }, + "description": "REST API operation definition." + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "The list of resource provider operations." + } + }, + "description": "A list of resource provider operations." + }, + "LogFileProperties": { + "properties": { + "name": { + "type": "string", + "description": "Log file name." + }, + "sizeInKB": { + "type": "integer", + "format": "int64", + "description": "Size of the log file." + }, + "createdTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Creation timestamp of the log file." + }, + "lastModifiedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Last modified timestamp of the log file." + }, + "type": { + "type": "string", + "description": "Type of the log file." + }, + "url": { + "type": "string", + "description": "The url to download the log file from." + } + }, + "description": "The properties of a log file." + }, + "LogFile": { + "properties": { + "name": { + "type": "string", + "description": "The name of the log file." + }, + "properties": { + "$ref": "#/definitions/LogFileProperties", + "x-ms-client-flatten": true, + "description": "The properties of the log file." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Represents a log file." + }, + "LogFileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LogFile" + }, + "description": "The list of log files." + } + }, + "description": "A list of log files." + }, + "PerformanceTierServiceLevelObjectives": { + "properties": { + "id": { + "type": "string", + "description": "ID for the service level objective." + }, + "edition": { + "type": "string", + "description": "Edition of the performance tier." + }, + "vCore": { + "type": "integer", + "description": "vCore associated with the service level objective" + }, + "hardwareGeneration": { + "type": "string", + "description": "Hardware generation associated with the service level objective" + } + }, + "description": "Service level objectives for performance tier." + }, + "PerformanceTierProperties": { + "properties": { + "id": { + "type": "string", + "description": "ID of the performance tier." + }, + "maxBackupRetentionDays": { + "type": "integer", + "description": "Maximum Backup retention in days for the performance tier edition" + }, + "minBackupRetentionDays": { + "type": "integer", + "description": "Minimum Backup retention in days for the performance tier edition" + }, + "maxStorageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + }, + "minStorageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + }, + "serviceLevelObjectives": { + "type": "array", + "items": { + "$ref": "#/definitions/PerformanceTierServiceLevelObjectives" + }, + "description": "Service level objectives associated with the performance tier" + } + }, + "description": "Performance tier properties" + }, + "PerformanceTierListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PerformanceTierProperties" + }, + "description": "The list of performance tiers" + } + }, + "description": "A list of performance tiers." + }, + "NameAvailabilityRequest": { + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Resource name to verify." + }, + "type": { + "type": "string", + "description": "Resource type used for verification." + } + }, + "description": "Request from client to check resource name availability." + }, + "NameAvailability": { + "properties": { + "message": { + "type": "string", + "description": "Error Message." + }, + "nameAvailable": { + "type": "boolean", + "description": "Indicates whether the resource name is available." + }, + "reason": { + "type": "string", + "description": "Reason for name being unavailable." + } + }, + "description": "Represents a resource name availability." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription ID that identifies an Azure subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the request." + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + }, + "FirewallRuleNameParameter": { + "name": "firewallRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server firewall rule.", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database.", + "x-ms-parameter-location": "method" + }, + "ConfigurationNameParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server configuration.", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/mysql/resource-manager/readme.md b/specification/mysql/resource-manager/readme.md index 7c9488837ac2..77608766c977 100644 --- a/specification/mysql/resource-manager/readme.md +++ b/specification/mysql/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the Sql API. ``` yaml openapi-type: arm -tag: package-2017-04-preview +tag: package-2017-12-01-preview ``` @@ -40,6 +40,16 @@ input-file: ``` +### Tag: package-2017-12-01-preview + +These settings apply only when `--tag=package-2017-12-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2017-12-01-preview' +input-file: +- Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json +``` + + --- # Code Generation @@ -112,6 +122,14 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-12-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/mysql/mgmt/2017-12-01-preview/mysql +``` ## Java diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index 7226c35524bb..13c7d65eb55d 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -328,6 +328,8 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + autorest_options: + use: "@microsoft.azure/autorest.python@~3.0" after_scripts: - python ./scripts/multiapi_init_gen.py azure-mgmt-network - repo: azure-libraries-for-java diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json index 017ee5863d03..a0cab706dd61 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json @@ -630,6 +630,52 @@ } } } + }, + "/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.", + "x-ms-long-running-operation": true, + "operationId": "Workspaces_Purge", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/WorkspacePurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Log Analytics workspace.", + "schema": { + "$ref": "#/definitions/WorkspacePurgeResponse" + } + }, + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/WorkspacePurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "WorkspacePurge": { + "$ref": "./examples/WorkspacesPurge.json" + } + } + } } }, "definitions": { @@ -1247,6 +1293,71 @@ } }, "description": "Common properties of proxy resource." + }, + "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" + }, + "filter": { + "description": "A query to to run over the provided table and column to purge the corresponding data.", + "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": { @@ -1274,6 +1385,32 @@ "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Log Analytics workspace name", + "x-ms-parameter-location": "method" + }, + "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": "client" + }, + "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": "client" } } } \ No newline at end of file diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/examples/WorkspacesPurge.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/examples/WorkspacesPurge.json new file mode 100644 index 000000000000..28b6d5c7f551 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/examples/WorkspacesPurge.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName":"OIAutoRest5123", + "workspaceName":"aztest5048", + "api-version":"2015-03-02", + "subscriptionId":"00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "filter": "< ago(30d)" + } + ] + } + }, + "responses": { + "202": { + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + }, + "200": { + "body": { + "status": "Completed" + } + } + } +} + \ No newline at end of file diff --git a/specification/operationsmanagement/resource-manager/Microsoft.OperationsManagement/preview/2015-11-01-preview/OperationsManagement.json b/specification/operationsmanagement/resource-manager/Microsoft.OperationsManagement/preview/2015-11-01-preview/OperationsManagement.json index 5a2064f705a9..c060766be487 100644 --- a/specification/operationsmanagement/resource-manager/Microsoft.OperationsManagement/preview/2015-11-01-preview/OperationsManagement.json +++ b/specification/operationsmanagement/resource-manager/Microsoft.OperationsManagement/preview/2015-11-01-preview/OperationsManagement.json @@ -965,21 +965,24 @@ "in": "path", "required": true, "type": "string", - "description": "Provider name for the parent resource." + "description": "Provider name for the parent resource.", + "x-ms-parameter-location": "client" }, "ResourceTypeParameter": { "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "Resource type for the parent resource" + "description": "Resource type for the parent resource", + "x-ms-parameter-location": "client" }, "ResourceNameParameter": { "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "Parent resource name." + "description": "Parent resource name.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..19fdfe3892a1 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndAggregateOnly.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyEvents)" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "NumDenyEvents": { + "ordinal": 1, + "name": "NumDenyEvents", + "dataType": "Numeric" + } + }, + "rows": [ + [ + 40 + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..0f6f72e9a190 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$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": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "PolicyAssignmentId": { + "ordinal": 1, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 2, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 3, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "ResourceId": { + "ordinal": 4, + "name": "ResourceId", + "dataType": "String" + }, + "NumEvents": { + "ordinal": 5, + "name": "NumEvents", + "dataType": "Numeric" + } + }, + "rows": [ + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "audit", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/resourcescachemonitor/services/myService", + 1 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d6be6bb37e5f4333baa95c2a", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6", + "audit", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/resourcescachemonitor/services/myService", + 1 + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..b26724d30dde --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$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": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "PolicyAssignmentId": { + "ordinal": 1, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 2, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 3, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "ResourceId": { + "ordinal": 4, + "name": "ResourceId", + "dataType": "String" + } + }, + "rows": [ + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/storageaccountsku", + "/providers/microsoft.authorization/policydefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "deny", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/mysa1" + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/da43b50031bf4bce84584faa", + "/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62", + "deny", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.storage/storageaccounts/mysa2" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..fa7245208b18 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_FilterAndMultipleGroups.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$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": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "PolicyAssignmentId": { + "ordinal": 1, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 2, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "NumDeniedResources": { + "ordinal": 3, + "name": "NumDeniedResources", + "dataType": "Numeric" + } + }, + "rows": [ + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/0591f497c35344fcbaf7a393", + "/providers/microsoft.authorization/policydefinitions/e56962a6-4747-49cd-b67b-bf8b01975c4c", + 3 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/mypolicyassignment2", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mypolicydefinition2", + 2 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/mypolicyassignment2", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mypolicydefinition3", + 2 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.authorization/policyassignments/mypolicyassignment3", + "/providers/microsoft.authorization/policydefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + 1 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/da43b50031bf4bce84584faa", + "/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62", + 1 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/mypolicyassignment1", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mypolicydefinition1", + 1 + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryManagementGroupScope.json new file mode 100644 index 000000000000..b1f067647e55 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryManagementGroupScope.json @@ -0,0 +1,218 @@ +{ + "parameters": { + "policyEventsResource": "default", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T22:54:39.8128521Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff5d536aec743a0aa801c1a", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fffd9357-fff0-fff7-fff4-fff30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.OperationalInsights/workspaces", + "canadacentral", + "myResourceGroup", + "tbd", + "fff5d536aec743a0aa801c1a", + "tbd", + "{}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fffd9357-fff0-fff7-fff4-fff30ce4c32d", + "audit", + "tbd", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/fffcefd2-fff6-ffff-fff4-fffa170eb1d5", + "fffcefd2-fff6-ffff-fff4-fffa170eb1d5", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff21232277412542086", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "ffffb743-fff5-fff7-fffe-fffc2444f333" + ], + [ + "2018-02-05T22:54:39.8128521Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff16fce53454b15a7ed803d", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fff0414b-fff4-fffd-fff5-fff79a89232c", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.OperationalInsights/workspaces", + "canadacentral", + "myResourceGroup", + "tbd", + "fff16fce53454b15a7ed803d", + "tbd", + "{\"allowedLocations\":{\"value\":[\"eastus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fff0414b-fff4-fffd-fff5-fff79a89232c", + "audit", + "tbd", + "", + "", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "ffffb743-fff5-fff7-fffe-fffc2444f333" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryNestedResourceScope.json new file mode 100644 index 000000000000..108398679652 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryNestedResourceScope.json @@ -0,0 +1,217 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T23:24:28.4444412Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/fffc58b7db524a9799381531", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/fff79b49-fff9-fff5-fffe-fff49ab8b474", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ServiceFabric/clusters/applications", + "eastus", + "myResourceGroup", + "tbd", + "fffc58b7db524a9799381531", + "tbd", + "{\"TAGNAME_1\":{\"value\":\"NA\"}}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "fff79b49-fff9-fff5-fffe-fff49ab8b474", + "audit", + "tbd", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policySetDefinitions/fff58873-fff8-fff5-fffc-fffbe7c9d697", + "fff58873-fff8-fff5-fffc-fffbe7c9d697", + null, + null, + null, + "", + "2124621540977569058", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff3809a-fffc-fffe-fff1-fffe57573195" + ], + [ + "2018-02-05T23:24:28.4444412Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fffd9357-fff0-fff7-fff4-fff30ce4c32d", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ServiceFabric/clusters/applications", + "eastus", + "myResourceGroup", + "tbd", + "fff044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fffd9357-fff0-fff7-fff4-fff30ce4c32d", + "audit", + "tbd", + "", + "", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff3809a-fffc-fffe-fff1-fffe57573195" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryResourceGroupScope.json new file mode 100644 index 000000000000..de3ef8f85c41 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryResourceGroupScope.json @@ -0,0 +1,218 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T22:54:39.8128521Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff5d536aec743a0aa801c1a", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fffd9357-fff0-fff7-fff4-fff30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.OperationalInsights/workspaces", + "canadacentral", + "myResourceGroup", + "tbd", + "fff5d536aec743a0aa801c1a", + "tbd", + "{}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fffd9357-fff0-fff7-fff4-fff30ce4c32d", + "audit", + "tbd", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/fffcefd2-fff6-ffff-fff4-fffa170eb1d5", + "fffcefd2-fff6-ffff-fff4-fffa170eb1d5", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff21232277412542086", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "ffffb743-fff5-fff7-fffe-fffc2444f333" + ], + [ + "2018-02-05T22:54:39.8128521Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff16fce53454b15a7ed803d", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fff0414b-fff4-fffd-fff5-fff79a89232c", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.OperationalInsights/workspaces", + "canadacentral", + "myResourceGroup", + "tbd", + "fff16fce53454b15a7ed803d", + "tbd", + "{\"allowedLocations\":{\"value\":[\"eastus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fff0414b-fff4-fffd-fff5-fff79a89232c", + "audit", + "tbd", + "", + "", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "ffffb743-fff5-fff7-fffe-fffc2444f333" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryResourceScope.json new file mode 100644 index 000000000000..4b2a308e07fc --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QueryResourceScope.json @@ -0,0 +1,217 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T22:34:02.3475017Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/fff27f38-fff4-fff8-fff1-fffc84b8c017", + "/providers/Microsoft.Authorization/policyDefinitions/fffea587-fff0-fff3-ffff-fff0ae01cfd6", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ClassicCompute/domainNames", + "eastus", + "myResourceGroup", + "tbd", + "fff27f38-fff4-fff8-fff1-fffc84b8c017", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "fffea587-fff0-fff3-ffff-fff0ae01cfd6", + "audit", + "tbd", + "/providers/Microsoft.Authorization/policySetDefinitions/fffafdf9-fff9-fffd-ffff-fffa613e70a8", + "fffafdf9-fff9-fffd-ffff-fffa613e70a8", + null, + null, + null, + "", + null, + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff890fa-fff0-fff3-fff9-fffd7653f078" + ], + [ + "2018-02-05T22:34:01.6135357Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "/providers/Microsoft.Authorization/policyDefinitions/fffea587-fff0-fff3-ffff-fff0ae01cfd6", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ClassicCompute/domainNames", + "eastus", + "myResourceGroup", + "tbd", + "Enable Monitoring in Azure Security Center", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "fffea587-fff0-fff3-ffff-fff0ae01cfd6", + "audit", + "tbd", + "/providers/Microsoft.Authorization/policySetDefinitions/fffafdf9-fff9-fffd-ffff-fffa613e70a8", + "fffafdf9-fff9-fffd-ffff-fffa613e70a8", + null, + null, + null, + "", + null, + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff890fa-fff0-fff3-fff9-fffd7653f078" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..2afdac243708 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,217 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T23:24:28.4444412Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/fffc58b7db524a9799381531", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/fff79b49-fff9-fff5-fffe-fff49ab8b474", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "eastus", + "", + "tbd", + "fffc58b7db524a9799381531", + "tbd", + "{\"TAGNAME_1\":{\"value\":\"NA\"}}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "fff79b49-fff9-fff5-fffe-fff49ab8b474", + "audit", + "tbd", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policySetDefinitions/fff58873-fff8-fff5-fffc-fffbe7c9d697", + "fff58873-fff8-fff5-fffc-fffbe7c9d697", + null, + null, + null, + "", + "2124621540977569058", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff3809a-fffc-fffe-fff1-fffe57573195" + ], + [ + "2018-02-05T23:24:28.4444412Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fffd9357-fff0-fff7-fff4-fff30ce4c32d", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "eastus", + "", + "tbd", + "fff044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fffd9357-fff0-fff7-fff4-fff30ce4c32d", + "audit", + "tbd", + "", + "", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff3809a-fffc-fffe-fff1-fffe57573195" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..db6d9b7e4766 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,217 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T22:34:02.3475017Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/fff27f38-fff4-fff8-fff1-fffc84b8c017", + "/providers/Microsoft.Authorization/policyDefinitions/fffea587-fff0-fff3-ffff-fff0ae01cfd6", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType", + "eastus", + "", + "tbd", + "fff27f38-fff4-fff8-fff1-fffc84b8c017", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "fffea587-fff0-fff3-ffff-fff0ae01cfd6", + "audit", + "tbd", + "/providers/Microsoft.Authorization/policySetDefinitions/fffafdf9-fff9-fffd-ffff-fffa613e70a8", + "fffafdf9-fff9-fffd-ffff-fffa613e70a8", + null, + null, + null, + "", + null, + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff890fa-fff0-fff3-fff9-fffd7653f078" + ], + [ + "2018-02-05T22:34:01.6135357Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "/providers/Microsoft.Authorization/policyDefinitions/fffea587-fff0-fff3-ffff-fff0ae01cfd6", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType", + "eastus", + "", + "tbd", + "Enable Monitoring in Azure Security Center", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "fffea587-fff0-fff3-ffff-fff0ae01cfd6", + "audit", + "tbd", + "/providers/Microsoft.Authorization/policySetDefinitions/fffafdf9-fff9-fffd-ffff-fffa613e70a8", + "fffafdf9-fff9-fffd-ffff-fffa613e70a8", + null, + null, + null, + "", + null, + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff890fa-fff0-fff3-fff9-fffd7653f078" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionScope.json new file mode 100644 index 000000000000..1391d87459ed --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_QuerySubscriptionScope.json @@ -0,0 +1,217 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "TenantId": { + "ordinal": 26, + "name": "TenantId", + "dataType": "String" + }, + "PrincipalOid": { + "ordinal": 27, + "name": "PrincipalOid", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T22:54:39.8128521Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff5d536aec743a0aa801c1a", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fffd9357-fff0-fff7-fff4-fff30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.OperationalInsights/workspaces", + "canadacentral", + "myResourceGroup", + "tbd", + "fff5d536aec743a0aa801c1a", + "tbd", + "{}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fffd9357-fff0-fff7-fff4-fff30ce4c32d", + "audit", + "tbd", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/fffcefd2-fff6-ffff-fff4-fffa170eb1d5", + "fffcefd2-fff6-ffff-fff4-fffa170eb1d5", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "fff21232277412542086", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "ffffb743-fff5-fff7-fffe-fffc2444f333" + ], + [ + "2018-02-05T22:54:39.8128521Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/fff16fce53454b15a7ed803d", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/fff0414b-fff4-fffd-fff5-fff79a89232c", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.OperationalInsights/workspaces", + "canadacentral", + "myResourceGroup", + "tbd", + "fff16fce53454b15a7ed803d", + "tbd", + "{\"allowedLocations\":{\"value\":[\"eastus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "fff0414b-fff4-fffd-fff5-fff79a89232c", + "audit", + "tbd", + "", + "", + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "", + "fff988bf-fff1-ffff-fffb-fffcd011db47", + "ffffb743-fff5-fff7-fffe-fffc2444f333" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..a92381298268 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$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": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "PolicyAssignmentId": { + "ordinal": 2, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 3, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "SubscriptionId": { + "ordinal": 4, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 5, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceId": { + "ordinal": 6, + "name": "ResourceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-05T22:34:02.3475017Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/fff27f38-fff4-fff8-fff1-fffc84b8c017", + "/providers/Microsoft.Authorization/policyDefinitions/fffea587-fff0-fff3-ffff-fff0ae01cfd6", + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "myResourceGroup", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName" + ], + [ + "2018-02-05T22:34:01.6135357Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "/providers/Microsoft.Authorization/policyDefinitions/fffea587-fff0-fff3-ffff-fff0ae01cfd6", + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "myResourceGroup", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..ba77d538455c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndAggregateOnly.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyStates)" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "NumDenyStates": { + "ordinal": 1, + "name": "NumDenyStates", + "dataType": "Numeric" + } + }, + "rows": [ + [ + 12 + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..08ad43bf0cd9 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "IsCompliant eq false and (PolicyDefinitionAction eq 'audit' or PolicyDefinitionAction eq 'deny')", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId), aggregate($count as NumAuditDenyNonComplianceRecords))", + "$orderby": "NumAuditDenyNonComplianceRecords desc", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "PolicyAssignmentId": { + "ordinal": 1, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 2, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 3, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "ResourceId": { + "ordinal": 4, + "name": "ResourceId", + "dataType": "String" + }, + "NumAuditDenyNonComplianceRecords": { + "ordinal": 5, + "name": "NumAuditDenyNonComplianceRecords", + "dataType": "Numeric" + } + }, + "rows": [ + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "audit", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.classiccompute/domainnames/myDomainName", + 8 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "audit", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.classiccompute/domainnames/myDomainName", + 8 + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..20c1afea661d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$from": "2018-01-05T18:00:00Z", + "$filter": "IsCompliant eq false and (PolicyDefinitionAction ne 'audit' and PolicyDefinitionAction ne 'append')", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId))", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "PolicyAssignmentId": { + "ordinal": 1, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 2, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 3, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "ResourceId": { + "ordinal": 4, + "name": "ResourceId", + "dataType": "String" + } + }, + "rows": [ + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "auditifnotexists", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.network/virtualnetworks/vnet" + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d15545b8-ff50-409a-a6e3-5bd5cc954003", + "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "auditifnotexists", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.network/virtualnetworks/vnet" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..637bee4487e5 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_FilterAndMultipleGroups.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$filter": "IsCompliant eq false", + "$apply": "groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId, ResourceId))/groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId), aggregate($count as NumNonCompliantResources))", + "$orderby": "NumNonCompliantResources desc", + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "PolicyAssignmentId": { + "ordinal": 1, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 2, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 3, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 4, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + }, + "NumNonCompliantResources": { + "ordinal": 5, + "name": "NumNonCompliantResources", + "dataType": "Numeric" + } + }, + "rows": [ + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "1679708035638239273", + 557 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "14799174781370023846", + 557 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "1679708035638239273", + 557 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "", + 557 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "", + 557 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "14799174781370023846", + 557 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "", + 552 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "8935913113203900114", + 544 + ], + [ + "/providers/microsoft.management/managementgroups/azgovtest1/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874", + "", + "/providers/microsoft.management/managementgroups/azgovtest1/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "", + 526 + ], + [ + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "2124621540977569058", + 509 + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_ListOperations.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_ListOperations.json new file mode 100644 index 000000000000..d5a2b53cb332 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_ListOperations.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "default/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Events", + "operation": "Query Policy Events", + "description": "Query information about policy events." + } + }, + { + "name": "default/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy States", + "operation": "Query Policy States", + "description": "Query information about policy states." + } + }, + { + "name": "latest/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Latest States", + "operation": "Query Policy Latest States", + "description": "Query information about policy latest states." + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryManagementGroupScope.json new file mode 100644 index 000000000000..b8fd01144798 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryManagementGroupScope.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-08T23:19:37Z", + "/subscriptions/fff83be3-fff8-fff8-fff5-fff2625f5bb5/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myResourceGroup-vnet", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/8174043a1e2849179635b874", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + null, + false, + "fff83be3-fff8-fff8-fff5-fff2625f5bb5", + "/Microsoft.Network/virtualNetworks", + "westcentralus", + "myResourceGroup", + "tbd", + "8174043a1e2849179635b874", + "tbd", + "{\"allowedResourceGroups\":{\"value\":[\"value1\",\"value2\",\"value3\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "audit", + "tbd", + null, + null, + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-08T23:19:37Z", + "/subscriptions/fff83be3-fff8-fff8-fff5-fff2625f5bb5/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myResourceGroup-vnet", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/95816fce53454b15a7ed803d", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/a2c0414b-82e4-459d-97d5-94c79a89232c", + null, + false, + "fff83be3-fff8-fff8-fff5-fff2625f5bb5", + "/Microsoft.Network/virtualNetworks", + "westcentralus", + "myResourceGroup", + "tbd", + "95816fce53454b15a7ed803d", + "tbd", + "{\"allowedLocations\":{\"value\":[\"eastus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "a2c0414b-82e4-459d-97d5-94c79a89232c", + "audit", + "tbd", + null, + null, + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryNestedResourceScope.json new file mode 100644 index 000000000000..472b013ee782 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryNestedResourceScope.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/d6be6bb37e5f4333baa95c2a", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ServiceFabric/clusters/applications", + "eastus", + "myResourceGroup", + "tbd", + "d6be6bb37e5f4333baa95c2a", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "5948d091-78b7-4d3b-a404-cc6a0329b0c6", + "audit", + "tbd", + "", + "", + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ServiceFabric/clusters/applications", + "eastus", + "myResourceGroup", + "tbd", + "3f3c4330183b4e218fe6fd29", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "24813039-7534-408a-9842-eb99f45721b1", + "audit", + "tbd", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryResourceGroupScope.json new file mode 100644 index 000000000000..db139dfd14f8 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryResourceGroupScope.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-09T00:06:00Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/serviceCertificates/sha1-FFFBDAF1F25210FFFDD95BD0C9B0AFCD6F26FFFF", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.ClassicCompute/domainNames/serviceCertificates", + "eastus", + "myResourceGroup", + "tbd", + "186044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/mymg", + "022d9357-5a90-46f7-9554-21d30ce4c32d", + "audit", + "tbd", + null, + null, + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-09T00:06:00Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.ClassicCompute/domainNames", + "eastus", + "myResourceGroup", + "tbd", + "186044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/mymg", + "022d9357-5a90-46f7-9554-21d30ce4c32d", + "audit", + "tbd", + null, + null, + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryResourceScope.json new file mode 100644 index 000000000000..8271ca16056d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QueryResourceScope.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ClassicCompute/domainNames", + "eastus", + "myResourceGroup", + "tbd", + "186044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/mymg", + "022d9357-5a90-46f7-9554-21d30ce4c32d", + "audit", + "tbd", + null, + null, + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.ClassicCompute/domainNames", + "eastus", + "myResourceGroup", + "tbd", + "test", + "tbd", + "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "Audit a tag and it's value", + "audit", + "tbd", + null, + null, + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..e2a800113ec3 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/d6be6bb37e5f4333baa95c2a", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "eastus", + "", + "tbd", + "d6be6bb37e5f4333baa95c2a", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "5948d091-78b7-4d3b-a404-cc6a0329b0c6", + "audit", + "tbd", + "", + "", + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "eastus", + "", + "tbd", + "3f3c4330183b4e218fe6fd29", + "tbd", + "{}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "24813039-7534-408a-9842-eb99f45721b1", + "audit", + "tbd", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..78f90110965d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType", + "eastus", + "", + "tbd", + "186044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/mymg", + "022d9357-5a90-46f7-9554-21d30ce4c32d", + "audit", + "tbd", + null, + null, + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-08T07:04:29Z", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + null, + false, + "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "/Microsoft.SomeNamespace/someResourceType", + "eastus", + "", + "tbd", + "test", + "tbd", + "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "Audit a tag and it's value", + "audit", + "tbd", + null, + null, + null, + null, + null, + "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionScope.json new file mode 100644 index 000000000000..d2c4bc025675 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_QuerySubscriptionScope.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "ResourceId": { + "ordinal": 2, + "name": "ResourceId", + "dataType": "String" + }, + "PolicyAssignmentId": { + "ordinal": 3, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 4, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "EffectiveParameters": { + "ordinal": 5, + "name": "EffectiveParameters", + "dataType": "String" + }, + "IsCompliant": { + "ordinal": 6, + "name": "IsCompliant", + "dataType": "Boolean" + }, + "SubscriptionId": { + "ordinal": 7, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceType": { + "ordinal": 8, + "name": "ResourceType", + "dataType": "String" + }, + "ResourceLocation": { + "ordinal": 9, + "name": "ResourceLocation", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 10, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceTags": { + "ordinal": 11, + "name": "ResourceTags", + "dataType": "String" + }, + "PolicyAssignmentName": { + "ordinal": 12, + "name": "PolicyAssignmentName", + "dataType": "String" + }, + "PolicyAssignmentOwner": { + "ordinal": 13, + "name": "PolicyAssignmentOwner", + "dataType": "String" + }, + "PolicyAssignmentParameters": { + "ordinal": 14, + "name": "PolicyAssignmentParameters", + "dataType": "String" + }, + "PolicyAssignmentScope": { + "ordinal": 15, + "name": "PolicyAssignmentScope", + "dataType": "String" + }, + "PolicyDefinitionName": { + "ordinal": 16, + "name": "PolicyDefinitionName", + "dataType": "String" + }, + "PolicyDefinitionAction": { + "ordinal": 17, + "name": "PolicyDefinitionAction", + "dataType": "String" + }, + "PolicyDefinitionCategory": { + "ordinal": 18, + "name": "PolicyDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionId": { + "ordinal": 19, + "name": "PolicySetDefinitionId", + "dataType": "String" + }, + "PolicySetDefinitionName": { + "ordinal": 20, + "name": "PolicySetDefinitionName", + "dataType": "String" + }, + "PolicySetDefinitionOwner": { + "ordinal": 21, + "name": "PolicySetDefinitionOwner", + "dataType": "String" + }, + "PolicySetDefinitionCategory": { + "ordinal": 22, + "name": "PolicySetDefinitionCategory", + "dataType": "String" + }, + "PolicySetDefinitionParameters": { + "ordinal": 23, + "name": "PolicySetDefinitionParameters", + "dataType": "String" + }, + "ManagementGroupIds": { + "ordinal": 24, + "name": "ManagementGroupIds", + "dataType": "String" + }, + "PolicyDefinitionReferenceId": { + "ordinal": 25, + "name": "PolicyDefinitionReferenceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-08T23:26:49Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/services/myService", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.ServiceFabric/clusters/applications/services", + "eastus", + "myResourceGroup", + "tbd", + "186044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "022d9357-5a90-46f7-9554-21d30ce4c32d", + "audit", + "tbd", + null, + null, + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ], + [ + "2018-02-08T23:26:49Z", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + null, + false, + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "/Microsoft.ServiceFabric/clusters/applications", + "eastus", + "myResourceGroup", + "tbd", + "186044306c044a1d8c0ff76c", + "tbd", + "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "022d9357-5a90-46f7-9554-21d30ce4c32d", + "audit", + "tbd", + null, + null, + null, + null, + null, + "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + null + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..14ebadc58bf9 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/examples/PolicyStates_TimeRangeSortSelectTop.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-08-09-preview", + "$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": { + "value": [ + { + "metadata": { + "generatedQuery": "" + }, + "columns": { + "Timestamp": { + "ordinal": 1, + "name": "Timestamp", + "dataType": "DateTime" + }, + "PolicyAssignmentId": { + "ordinal": 2, + "name": "PolicyAssignmentId", + "dataType": "String" + }, + "PolicyDefinitionId": { + "ordinal": 3, + "name": "PolicyDefinitionId", + "dataType": "String" + }, + "SubscriptionId": { + "ordinal": 4, + "name": "SubscriptionId", + "dataType": "String" + }, + "ResourceGroup": { + "ordinal": 5, + "name": "ResourceGroup", + "dataType": "String" + }, + "ResourceId": { + "ordinal": 6, + "name": "ResourceId", + "dataType": "String" + } + }, + "rows": [ + [ + "2018-02-06T17:58:00Z", + "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "myResourceGroup1", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup1/providers/Microsoft.Storage/storageAccounts/mysa1" + ], + [ + "2018-02-06T17:58:00Z", + "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "myResourceGroup2", + "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup2/providers/Microsoft.Storage/storageAccounts/mysa2" + ] + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/policyEvents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/policyEvents.json new file mode 100644 index 000000000000..47397a564335 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/policyEvents.json @@ -0,0 +1,613 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyEventsClient", + "version": "2017-08-09-preview" + }, + "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" + } + ], + "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" } + } + } + } + }, + "definitions": { + "PolicyEventsQueryResults": { + "description": "Query results.", + "properties": { + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyEventsQueryResultsTable" + } + } + } + }, + "PolicyEventsQueryResultsTable": { + "description": "Query results table.", + "properties": { + "metadata": { + "description": "Metadata about the query results.", + "properties": { + "generatedQuery": { + "description": "Internal query generated. Used for diagnostics purposes.", + "type": "string" + } + } + }, + "columns": { + "type": "object", + "description": "List of columns included in query results.", + "properties": { + "Timestamp": { + "description": "Timestamp for the policy event record.", + "$ref": "#/definitions/Column" + }, + "ResourceId": { + "description": "Resource ID.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentId": { + "description": "Policy assignment ID.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionId": { + "description": "Policy definition ID.", + "$ref": "#/definitions/Column" + }, + "EffectiveParameters": { + "description": "Effective parameters for the policy assignment.", + "$ref": "#/definitions/Column" + }, + "IsCompliant": { + "description": "Flag which states whether the resource is compliant against the policy assignment it was evaluated against.", + "$ref": "#/definitions/Column" + }, + "SubscriptionId": { + "description": "Subscription ID.", + "$ref": "#/definitions/Column" + }, + "ResourceType": { + "description": "Resource type.", + "$ref": "#/definitions/Column" + }, + "ResourceLocation": { + "description": "Resource location.", + "$ref": "#/definitions/Column" + }, + "ResourceGroup": { + "description": "Resource group name.", + "$ref": "#/definitions/Column" + }, + "ResourceTags": { + "description": "List of resource tags.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentName": { + "description": "Policy assignment name.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentOwner": { + "description": "Policy assignment owner.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentParameters": { + "description": "Policy assignment parameters.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentScope": { + "description": "Policy assignment scope.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionName": { + "description": "Policy definition name.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionCategory": { + "description": "Policy definition category.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionName": { + "description": "Policy set definition name, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionOwner": { + "description": "Policy set definition owner, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionCategory": { + "description": "Policy set definition category, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionParameters": { + "description": "Policy set definition parameters, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "ManagementGroupIds": { + "description": "Comma seperated list of management group IDs, which represent the hierarchy of the management groups the resource is under.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionReferenceId": { + "description": "Reference ID for the policy definition inside the policy set, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "TenantId": { + "description": "Tenant ID for the policy event record.", + "$ref": "#/definitions/Column" + }, + "PrincipalOid": { + "description": "Principal object ID for the user who initiated the resource operation that triggered the policy event.", + "$ref": "#/definitions/Column" + } + }, + "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" + } + }, + "rows": { + "description": "Query result rows, each representing a policy event record.", + "type": "array", + "items": { + "description": "Query result row.", + "type": "array", + "items": { + "description": "Each column of the query result row." + } + } + } + } + }, + "Column": { + "description": "Column definition.", + "properties": { + "ordinal": { + "description": "Ordinal value of the column in a record.", + "type": "integer", + "format": "int32" + }, + "name": { + "description": "Name of the column.", + "type": "string" + }, + "dataType": { + "description": "Data type of the column.", + "type": "string" + } + } + }, + "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" + }, + "message": { + "description": "Description of the error.", + "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 resource provider; 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 + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/policyStates.json new file mode 100644 index 000000000000..ca2fcb4d4d97 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-08-09-preview/policyStates.json @@ -0,0 +1,680 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyStatesClient", + "version": "2017-08-09-preview" + }, + "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/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForManagementGroup", + "description": "Queries policy states for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at management group scope": { "$ref": "./examples/PolicyStates_QueryManagementGroupScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForSubscription", + "description": "Queries policy states for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionScope.json" }, + "Time range; sort, select and limit": { "$ref": "./examples/PolicyStates_TimeRangeSortSelectTop.json" }, + "Filter and group with aggregate": { "$ref": "./examples/PolicyStates_FilterAndGroupByWithAggregate.json" }, + "Filter and group without aggregate": { "$ref": "./examples/PolicyStates_FilterAndGroupByWithoutAggregate.json" }, + "Filter and aggregate only": { "$ref": "./examples/PolicyStates_FilterAndAggregateOnly.json" }, + "Filter and multiple groups": { "$ref": "./examples/PolicyStates_FilterAndMultipleGroups.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResourceGroup", + "description": "Queries policy states for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at resource group scope": { "$ref": "./examples/PolicyStates_QueryResourceGroupScope.json" } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResource", + "description": "Queries policy states for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query all policy states at resource scope": { "$ref": "./examples/PolicyStates_QueryResourceScope.json" }, + "Query all policy states at subscription level resource scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelResourceScope.json" }, + "Query all policy states at nested resource scope": { "$ref": "./examples/PolicyStates_QueryNestedResourceScope.json" }, + "Query all policy states at subscription level nested resource scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json" } + } + } + }, + "/providers/Microsoft.PolicyInsights/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists available operations.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of available operations.", + "schema": { + "$ref": "#/definitions/OperationsListResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "List operations": { "$ref": "./examples/PolicyStates_ListOperations.json" } + } + } + } + }, + "definitions": { + "PolicyStatesQueryResults": { + "description": "Query results.", + "properties": { + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyStatesQueryResultsTable" + } + } + } + }, + "PolicyStatesQueryResultsTable": { + "description": "Query results table.", + "properties": { + "metadata": { + "description": "Metadata about the query results.", + "properties": { + "generatedQuery": { + "description": "Internal query generated. Used for diagnostics purposes.", + "type": "string" + } + } + }, + "columns": { + "type": "object", + "description": "List of columns included in query results.", + "properties": { + "Timestamp": { + "description": "Timestamp for the policy state record.", + "$ref": "#/definitions/Column" + }, + "ResourceId": { + "description": "Resource ID.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentId": { + "description": "Policy assignment ID.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionId": { + "description": "Policy definition ID.", + "$ref": "#/definitions/Column" + }, + "EffectiveParameters": { + "description": "Effective parameters for the policy assignment.", + "$ref": "#/definitions/Column" + }, + "IsCompliant": { + "description": "Flag which states whether the resource is compliant against the policy assignment it was evaluated against.", + "$ref": "#/definitions/Column" + }, + "SubscriptionId": { + "description": "Subscription ID.", + "$ref": "#/definitions/Column" + }, + "ResourceType": { + "description": "Resource type.", + "$ref": "#/definitions/Column" + }, + "ResourceLocation": { + "description": "Resource location.", + "$ref": "#/definitions/Column" + }, + "ResourceGroup": { + "description": "Resource group name.", + "$ref": "#/definitions/Column" + }, + "ResourceTags": { + "description": "List of resource tags.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentName": { + "description": "Policy assignment name.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentOwner": { + "description": "Policy assignment owner.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentParameters": { + "description": "Policy assignment parameters.", + "$ref": "#/definitions/Column" + }, + "PolicyAssignmentScope": { + "description": "Policy assignment scope.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionName": { + "description": "Policy definition name.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionCategory": { + "description": "Policy definition category.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionName": { + "description": "Policy set definition name, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionOwner": { + "description": "Policy set definition owner, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionCategory": { + "description": "Policy set definition category, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "PolicySetDefinitionParameters": { + "description": "Policy set definition parameters, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + }, + "ManagementGroupIds": { + "description": "Comma seperated list of management group IDs, which represent the hierarchy of the management groups the resource is under.", + "$ref": "#/definitions/Column" + }, + "PolicyDefinitionReferenceId": { + "description": "Reference ID for the policy definition inside the policy set, if the policy assignment is for a policy set.", + "$ref": "#/definitions/Column" + } + }, + "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" + } + }, + "rows": { + "description": "Query result rows, each representing a policy state record.", + "type": "array", + "items": { + "description": "Query result row.", + "type": "array", + "items": { + "description": "Each column of the query result row." + } + } + } + } + }, + "Column": { + "description": "Column definition.", + "properties": { + "ordinal": { + "description": "Ordinal value of the column in a record.", + "type": "integer", + "format": "int32" + }, + "name": { + "description": "Name of the column.", + "type": "string" + }, + "dataType": { + "description": "Data type of the column.", + "type": "string" + } + } + }, + "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" + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + } + } + }, + "OperationsListResults": { + "description": "List of available operations.", + "properties": { + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Operation definition.", + "properties": { + "name": { + "description": "Operation name.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider name.", + "type": "string" + }, + "resource": { + "description": "Resource name on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation name.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + } + } + } + }, + "parameters": { + "policyStatesResourceParameter": { + "name": "policyStatesResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "default", + "latest" + ], + "x-ms-enum": { + "name": "PolicyStatesResource", + "modelAsString": true + }, + "description": "The virtual resource under PolicyStates resource type. In a given time range, 'latest' represents the latest policy state(s), whereas 'default' represents all policy state(s).", + "x-ms-parameter-location": "method" + }, + "managementGroupsNamespaceParameter": { + "name": "managementGroupsNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Management" + ], + "description": "The namespace for Microsoft Management resource provider; 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 + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..0ca1a4b02617 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..77d555367519 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..3d88615e5f30 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..a4d6f148c8f3 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_FilterAndMultipleGroups.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_GetMetadata.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_GetMetadata.json new file mode 100644 index 000000000000..46af2d35d0da --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_GetMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "scope": "subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview" + }, + "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 " + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryManagementGroupScope.json new file mode 100644 index 000000000000..0d6f25644a88 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryManagementGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryNestedResourceScope.json new file mode 100644 index 000000000000..aafd6dee8bc2 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/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": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryResourceGroupScope.json new file mode 100644 index 000000000000..86ca4e519e5a --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryResourceGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QueryResourceScope.json new file mode 100644 index 000000000000..78bee2e47c43 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/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": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..dc3723aff046 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/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": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..08c4d91c6f27 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/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": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionScope.json new file mode 100644 index 000000000000..20ad429a16c3 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_QuerySubscriptionScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..761a5f9ec917 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..9a77705b9f87 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyStates)" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "NumDenyStates": 6 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..4a5653af6f3b --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "IsCompliant eq false and (PolicyDefinitionAction eq 'audit' or PolicyDefinitionAction eq 'deny')", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId), aggregate($count as NumAuditDenyNonComplianceRecords))", + "$orderby": "NumAuditDenyNonComplianceRecords desc", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.classiccompute/domainnames/myDomainName", + "NumAuditDenyNonComplianceRecords": 10 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "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/myrg/providers/microsoft.classiccompute/domainnames/myDomainName", + "NumAuditDenyNonComplianceRecords": 10 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..91fb36d5f795 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$from": "2018-01-05T18:00:00Z", + "$filter": "IsCompliant eq false and (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/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/enable monitoring in azure security center", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "policyDefinitionAction": "auditifnotexists", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.network/virtualnetworks/vnet" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/89b27f38-e9e4-4468-ab81-801c84b8c017", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "policyDefinitionAction": "auditifnotexists", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.network/virtualnetworks/vnet" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..5486bac2abd0 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_FilterAndMultipleGroups.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$filter": "IsCompliant eq false", + "$apply": "groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId, ResourceId))/groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId), aggregate($count as NumNonCompliantResources))", + "$orderby": "NumNonCompliantResources desc", + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 10, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "14799174781370023846", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "1679708035638239273", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "14799174781370023846", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "1679708035638239273", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "policySetDefinitionId": "", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 552 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "8935913113203900114", + "NumNonCompliantResources": 544 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874", + "policySetDefinitionId": "", + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 526 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "2124621540977569058", + "NumNonCompliantResources": 509 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_GetMetadata.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_GetMetadata.json new file mode 100644 index 000000000000..45f6e3b5c72f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_GetMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "scope": "subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview" + }, + "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 " + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_ListOperations.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_ListOperations.json new file mode 100644 index 000000000000..7dfa6867003f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_ListOperations.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2017-10-17-preview" + }, + "responses": { + "200": { + "body": { + "@odata.count": 3, + "value": [ + { + "name": "default/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Events", + "operation": "Query Policy Events", + "description": "Query information about policy events." + } + }, + { + "name": "default/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy States", + "operation": "Query Policy States", + "description": "Query information about policy states." + } + }, + { + "name": "latest/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Latest States", + "operation": "Query Policy Latest States", + "description": "Query information about policy latest states." + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryManagementGroupScope.json new file mode 100644 index 000000000000..c14cf9a26164 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryManagementGroupScope.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-10-17-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:41:47Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/microsoft.insights/autoscalesettings/mytest1", + "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": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.insights/autoscalesettings", + "resourceLocation": "westus", + "resourceGroup": "myrg1", + "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" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:41:47Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/microsoft.insights/autoscalesettings/mytest1", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.insights/autoscalesettings", + "resourceLocation": "westus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryNestedResourceScope.json new file mode 100644 index 000000000000..dbc832842cc8 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryNestedResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2017-10-17-preview" + }, + "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/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryResourceGroupScope.json new file mode 100644 index 000000000000..a0b163fc24e9 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryResourceGroupScope.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-10-17-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T18:42:42Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/mysa1", + "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.Storage/storageAccounts", + "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": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T18:42:42Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/mysa1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Storage/storageAccounts", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "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": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryResourceScope.json new file mode 100644 index 000000000000..73ded1e6be65 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QueryResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2017-10-17-preview" + }, + "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/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "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/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "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/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..e38d715199ef --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2017-10-17-preview" + }, + "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/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..52f7ef267b0f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2017-10-17-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionScope.json new file mode 100644 index 000000000000..b0f0aa96c8a1 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_QuerySubscriptionScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:48:05Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Network/publicIPAddresses/mypubip1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "Enable Monitoring in Azure Security Center", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "AuditIfNotExists", + "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 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:48:05Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Network/publicIPAddresses/mypubip1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/9ac09b0657d942e5ad4041a6", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "9ac09b0657d942e5ad4041a6", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "AuditIfNotExists", + "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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..cc5cc28b89d1 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/examples/PolicyStates_TimeRangeSortSelectTop.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-10-17-preview", + "$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/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-06T17:58:00Z", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myrg1", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Storage/storageAccounts/mysa1" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-06T17:58:00Z", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myrg2", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg2/providers/Microsoft.Storage/storageAccounts/mysa2" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/policyEvents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/policyEvents.json new file mode 100644 index 000000000000..445cea0a6181 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/policyEvents.json @@ -0,0 +1,636 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyEventsClient", + "version": "2017-10-17-preview" + }, + "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" + } + ], + "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" } + } + } + }, + "/{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 seperated 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" + }, + "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" + } + }, + "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" + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + } + } + }, + "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 resource provider; 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 + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/policyStates.json new file mode 100644 index 000000000000..cc16f8d0feda --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-10-17-preview/policyStates.json @@ -0,0 +1,709 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyStatesClient", + "version": "2017-10-17-preview" + }, + "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/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForManagementGroup", + "description": "Queries policy states for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at management group scope": { "$ref": "./examples/PolicyStates_QueryManagementGroupScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForSubscription", + "description": "Queries policy states for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionScope.json" }, + "Time range; sort, select and limit": { "$ref": "./examples/PolicyStates_TimeRangeSortSelectTop.json" }, + "Filter and group with aggregate": { "$ref": "./examples/PolicyStates_FilterAndGroupByWithAggregate.json" }, + "Filter and group without aggregate": { "$ref": "./examples/PolicyStates_FilterAndGroupByWithoutAggregate.json" }, + "Filter and aggregate only": { "$ref": "./examples/PolicyStates_FilterAndAggregateOnly.json" }, + "Filter and multiple groups": { "$ref": "./examples/PolicyStates_FilterAndMultipleGroups.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResourceGroup", + "description": "Queries policy states for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at resource group scope": { "$ref": "./examples/PolicyStates_QueryResourceGroupScope.json" } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResource", + "description": "Queries policy states for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query all policy states at resource scope": { "$ref": "./examples/PolicyStates_QueryResourceScope.json" }, + "Query all policy states at subscription level resource scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelResourceScope.json" }, + "Query all policy states at nested resource scope": { "$ref": "./examples/PolicyStates_QueryNestedResourceScope.json" }, + "Query all policy states at subscription level nested resource scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json" } + } + } + }, + "/providers/Microsoft.PolicyInsights/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists available operations.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of available operations.", + "schema": { + "$ref": "#/definitions/OperationsListResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "List operations": { "$ref": "./examples/PolicyStates_ListOperations.json" } + } + } + }, + "/{scope}/providers/Microsoft.PolicyInsights/policyStates/$metadata": { + "get": { + "operationId": "PolicyStates_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/PolicyStates_GetMetadata.json" } + } + } + } + }, + "definitions": { + "PolicyStatesQueryResults": { + "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 state records returned.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyState" + } + } + } + }, + "PolicyState": { + "type": "object", + "description": "Policy state record.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since policy state 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 state 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 seperated 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" + } + }, + "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" + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + } + } + }, + "OperationsListResults": { + "description": "List of available operations.", + "properties": { + "@odata.count": { + "description": "OData entity count; represents the number of operations returned.", + "type": "integer", + "format": "int32", + "minimum": 1 + }, + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Operation definition.", + "properties": { + "name": { + "description": "Operation name.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider name.", + "type": "string" + }, + "resource": { + "description": "Resource name on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation name.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + } + } + }, + "MetadataDocument": { + "description": "Metadata XML document.", + "type": "string" + } + }, + "parameters": { + "policyStatesResourceParameter": { + "name": "policyStatesResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "default", + "latest" + ], + "x-ms-enum": { + "name": "PolicyStatesResource", + "modelAsString": true + }, + "description": "The virtual resource under PolicyStates resource type. In a given time range, 'latest' represents the latest policy state(s), whereas 'default' represents all policy state(s).", + "x-ms-parameter-location": "method" + }, + "managementGroupsNamespaceParameter": { + "name": "managementGroupsNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Management" + ], + "description": "The namespace for Microsoft Management resource provider; 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 + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..a3062e9db16e --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..022ab140f937 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndGroupByWithAggregate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..ba318c2e7c0a --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..8c838724c7a9 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_FilterAndMultipleGroups.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_GetMetadata.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_GetMetadata.json new file mode 100644 index 000000000000..4fd89e615525 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_GetMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "scope": "subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview" + }, + "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 " + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryManagementGroupScope.json new file mode 100644 index 000000000000..f8bb22eaf682 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryManagementGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryNestedResourceScope.json new file mode 100644 index 000000000000..402bddb8261c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..8d2fa1415698 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceGroupScope.json new file mode 100644 index 000000000000..2d88893fb7fc --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QueryResourceScope.json new file mode 100644 index 000000000000..373699893a2d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..c052cf688275 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..f9e2e62aed51 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..c6c7aa9644c2 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..26b417ffb39e --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..ab03f9b6dbcb --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/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": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionScope.json new file mode 100644 index 000000000000..f086b99c01e0 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_QuerySubscriptionScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview" + }, + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..f29e6fe38555 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyEvents_TimeRangeSortSelectTop.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..41cbee61578d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyStates)" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "NumDenyStates": 6 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..b2a9330e4602 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndGroupByWithAggregate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$from": "2018-02-05T18:00:00Z", + "$filter": "IsCompliant eq false and (PolicyDefinitionAction eq 'audit' or PolicyDefinitionAction eq 'deny')", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId), aggregate($count as NumAuditDenyNonComplianceRecords))", + "$orderby": "NumAuditDenyNonComplianceRecords desc", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.classiccompute/domainnames/myDomainName", + "NumAuditDenyNonComplianceRecords": 10 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "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/myrg/providers/microsoft.classiccompute/domainnames/myDomainName", + "NumAuditDenyNonComplianceRecords": 10 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..66b1d4313104 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$from": "2018-01-05T18:00:00Z", + "$filter": "IsCompliant eq false and (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/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/enable monitoring in azure security center", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "policyDefinitionAction": "auditifnotexists", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.network/virtualnetworks/vnet" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/89b27f38-e9e4-4468-ab81-801c84b8c017", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed", + "policyDefinitionAction": "auditifnotexists", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myrg/providers/microsoft.network/virtualnetworks/vnet" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..99670597c2c8 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_FilterAndMultipleGroups.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$filter": "IsCompliant eq false", + "$apply": "groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId, ResourceId))/groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, PolicyDefinitionReferenceId), aggregate($count as NumNonCompliantResources))", + "$orderby": "NumNonCompliantResources desc", + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 10, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "14799174781370023846", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "1679708035638239273", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "14799174781370023846", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "1679708035638239273", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "policySetDefinitionId": "", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 557 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 552 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "8935913113203900114", + "NumNonCompliantResources": 544 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874", + "policySetDefinitionId": "", + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionReferenceId": "", + "NumNonCompliantResources": 526 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "policyDefinitionReferenceId": "2124621540977569058", + "NumNonCompliantResources": 509 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_GetMetadata.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_GetMetadata.json new file mode 100644 index 000000000000..fb8f8c3e2620 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_GetMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "scope": "subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview" + }, + "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 " + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_ListOperations.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_ListOperations.json new file mode 100644 index 000000000000..3de5d287b34c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_ListOperations.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.count": 4, + "value": [ + { + "name": "default/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Events", + "operation": "Query Policy Events", + "description": "Query information about policy events." + } + }, + { + "name": "default/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy States", + "operation": "Query Policy States", + "description": "Query information about policy states." + } + }, + { + "name": "latest/queryResults/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Latest States", + "operation": "Query Policy Latest States", + "description": "Query information about policy latest states." + } + }, + { + "name": "latest/summarize/action", + "display": { + "provider": "Microsoft Policy Insights", + "resource": "Policy Latest States", + "operation": "Query Policy Latest States Summary", + "description": "Query summary information about policy latest states." + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryManagementGroupScope.json new file mode 100644 index 000000000000..efe90a0008d0 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryManagementGroupScope.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:41:47Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/microsoft.insights/autoscalesettings/mytest1", + "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": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.insights/autoscalesettings", + "resourceLocation": "westus", + "resourceGroup": "myrg1", + "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" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:41:47Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/microsoft.insights/autoscalesettings/mytest1", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.insights/autoscalesettings", + "resourceLocation": "westus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryNestedResourceScope.json new file mode 100644 index 000000000000..f726792ab748 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryNestedResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..40bab8a3e9d5 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "myPolicyAssignment", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$metadata#latest", + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:38:50Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Security/policies/mySecurityPolicy", + "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/4a0425e4-97bf-4ad0-ab36-145b94083c60", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Security/policies", + "resourceLocation": null, + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"EUS, WEU\"]}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup", + "policyDefinitionName": "4a0425e4-97bf-4ad0-ab36-145b94083c60", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:38:50Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/test", + "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/4a0425e4-97bf-4ad0-ab36-145b94083c60", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Authorization/policyAssignments", + "resourceLocation": null, + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"EUS, WEU\"]}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup", + "policyDefinitionName": "4a0425e4-97bf-4ad0-ab36-145b94083c60", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceGroupScope.json new file mode 100644 index 000000000000..8ff86a37b152 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceGroupScope.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T18:42:42Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/mysa1", + "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.Storage/storageAccounts", + "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": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T18:42:42Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/mysa1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Storage/storageAccounts", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "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": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceScope.json new file mode 100644 index 000000000000..94d1121594e6 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QueryResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "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/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "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/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..f30599819154 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyAssignments/186044306c044a1d8c0ff76c", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mymg/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "186044306c044a1d8c0ff76c", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"centralus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/mymg", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..f95cc04233bb --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$metadata#latest", + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:45:19Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Network/publicIPAddresses/my-ip-1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"test\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "c8b79b49-a579-4045-984e-1b249ab8b474", + "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": "2124621540977569058" + }, + { + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:45:19Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Network/publicIPAddresses/my-ip-1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "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.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"test\"}}", + "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" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..e7628e99e314 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$metadata#latest", + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:50:27Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/services/myService", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/d9da7e80af6344ab9d342aa7", + "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.ServiceFabric/clusters/applications/services", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "d9da7e80af6344ab9d342aa7", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"MyTag\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:50:27Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication/services/myService", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/d9da7e80af6344ab9d342aa7", + "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.ServiceFabric/clusters/applications/services", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "d9da7e80af6344ab9d342aa7", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"MyTag\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..61a473d612c6 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$metadata#latest", + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:54:58Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Web/sites/mySite", + "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.Web/sites", + "resourceLocation": "centralus", + "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": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@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/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-13T00:54:58Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Web/sites/mySite", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/LocationAuditDefinition", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Web/sites", + "resourceLocation": "centralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "LocationAuditDefinition", + "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": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..7c841710898e --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$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/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyStates/$metadata#default/$entity", + "timestamp": "2018-02-09T16:04:31Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/test", + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyDefinitions/Audit a tag and it's value", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "test", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"tagName\":{\"value\":\"no\"},\"tagValue\":{\"value\":\"no\"}}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "Audit a tag and it's value", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionScope.json new file mode 100644 index 000000000000..8ddcc6ffcab3 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_QuerySubscriptionScope.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:48:05Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Network/publicIPAddresses/mypubip1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "Enable Monitoring in Azure Security Center", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "AuditIfNotExists", + "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 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-09T17:48:05Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Network/publicIPAddresses/mypubip1", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/9ac09b0657d942e5ad4041a6", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.Network/publicIPAddresses", + "resourceLocation": "eastus", + "resourceGroup": "myrg1", + "resourceTags": "tbd", + "policyAssignmentName": "9ac09b0657d942e5ad4041a6", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "AuditIfNotExists", + "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 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeManagementGroupScope.json new file mode 100644 index 000000000000..1aacf3df0b2a --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeManagementGroupScope.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2017-12-12-preview", + "$from": "2018-02-05T18:00:00Z", + "$to": "2018-02-06T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny' or PolicyDefinitionAction eq 'audit'", + "$top": 0 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-05 18:00:00Z&$to=2018-02-06 18:00:00Z&$filter=(PolicyDefinitionAction eq 'deny' or PolicyDefinitionAction eq 'audit') and IsCompliant eq false", + "nonCompliantResources": 15410, + "nonCompliantPolicies": 68 + }, + "policyAssignments": [] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..09f4625afaba --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "b7a1ca2596524e3ab19597f2", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-22 23:54:22Z&$to=2018-02-23 23:54:22Z&$filter=IsCompliant eq false", + "nonCompliantResources": 7, + "nonCompliantPolicies": 1 + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-22 23:54:22Z&$to=2018-02-23 23:54:22Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2'", + "nonCompliantResources": 7, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/b7a1ca2596524e3ab19597f2/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-22 23:54:22Z&$to=2018-02-23 23:54:22Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/b7a1ca2596524e3ab19597f2' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/4a0425e4-97bf-4ad0-ab36-145b94083c60'", + "nonCompliantResources": 7 + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceGroupScope.json new file mode 100644 index 000000000000..147569e8323f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceGroupScope.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:55:09Z&$to=2018-02-13 19:55:09Z&$filter=IsCompliant eq false", + "nonCompliantResources": 55, + "nonCompliantPolicies": 20 + }, + "policyAssignments": [ + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:55:09Z&$to=2018-02-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c'", + "nonCompliantResources": 55, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:55:09Z&$to=2018-02-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 55 + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", + "policySetDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:55:09Z&$to=2018-02-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", + "nonCompliantResources": 55, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/d0610b27-9663-4c05-89f8-5b4be01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:55:09Z&$to=2018-02-13 19:55:09Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 55 + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceScope.json new file mode 100644 index 000000000000..4721644012fb --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeResourceScope.json @@ -0,0 +1,334 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false", + "nonCompliantResources": 1, + "nonCompliantPolicies": 14 + }, + "policyAssignments": [ + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/8174043a1e2849179635b874' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", + "policySetDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policyassignments/186044306c044a1d8c0ff76c' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/mymg/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/fed0d6ef-c76c-4a3d-a4ec-de07b1e7900b", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/fed0d6ef-c76c-4a3d-a4ec-de07b1e7900b'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and it's value", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/fed0d6ef-c76c-4a3d-a4ec-de07b1e7900b' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and it's value'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f5f5249bd6124d0692c2af52", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/bafcd34b-58c6-47b4-bc8b-f35198d6a025", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f5f5249bd6124d0692c2af52'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/test", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f5f5249bd6124d0692c2af52' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/testtest'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e4a08f18-4e3e-47af-a2eb-cc96d8c9a030", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/e4a08f18-4e3e-47af-a2eb-cc96d8c9a01f", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e4a08f18-4e3e-47af-a2eb-cc96d8c9a030'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 2 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and its value", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e4a08f18-4e3e-47af-a2eb-cc96d8c9a030' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and its value'", + "nonCompliantResources": 1 + } + }, + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and it's value", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e4a08f18-4e3e-47af-a2eb-cc96d8c9a030' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and it's value'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/dc7c38a6-42a9-4261-b54e-92549cd6e010", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/deny a resource based on owner tag", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/dc7c38a6-42a9-4261-b54e-92549cd6e010'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and it's value", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/dc7c38a6-42a9-4261-b54e-92549cd6e010' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/audit a tag and it's value'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/d6be6bb37e5f4333baa95c2a", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/d6be6bb37e5f4333baa95c2a'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/d6be6bb37e5f4333baa95c2a' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 3 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/locationauditdefinition", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", + "nonCompliantResources": 1 + } + }, + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 1 + } + }, + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 1 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1'", + "nonCompliantResources": 1, + "nonCompliantPolicies": 3 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/locationauditdefinition", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", + "nonCompliantResources": 1 + } + }, + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 1 + } + }, + { + "policyDefinitionId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/my-vault/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:59:17Z&$to=2018-02-13 19:59:17Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and PolicyDefinitionId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 1 + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..827514a8d3cd --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "api-version": "2017-12-12-preview" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:09:24Z&$to=2018-02-13 20:09:24Z&$filter=IsCompliant eq false", + "nonCompliantResources": 531, + "nonCompliantPolicies": 1 + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:09:24Z&$to=2018-02-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531'", + "nonCompliantResources": 531, + "nonCompliantPolicies": 4 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:09:24Z&$to=2018-02-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 531 + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:09:24Z&$to=2018-02-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 531 + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:09:24Z&$to=2018-02-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", + "nonCompliantResources": 220 + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:09:24Z&$to=2018-02-13 20:09:24Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682'", + "nonCompliantResources": 54 + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..11c50f5e2540 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "api-version": "2017-12-12-preview" + }, + "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/policyStates/$metadata#summary", + "@odata.count": 1, + "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/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false", + "nonCompliantResources": 561, + "nonCompliantPolicies": 4 + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 558, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 558 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29'", + "nonCompliantResources": 553, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 553 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1'", + "nonCompliantResources": 531, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/ddd8ef92e3714a5ea3d208c1' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 531 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531'", + "nonCompliantResources": 531, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 20:07:10Z&$to=2018-02-13 20:07:10Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/f4cc58b7db524a9799381531' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 531 + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..6b609fed669d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "api-version": "2017-12-12-preview", + "$from": "2018-02-05T18:00:00Z", + "$to": "2018-02-06T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$top": 1 + }, + "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/policyStates/$metadata#summary", + "@odata.count": 1, + "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/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-05 18:00:00Z&$to=2018-02-06 18:00:00Z&$filter=(PolicyDefinitionAction eq 'deny') and IsCompliant eq false", + "nonCompliantResources": 0, + "nonCompliantPolicies": 0 + }, + "policyAssignments": [] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionScope.json new file mode 100644 index 000000000000..34e5a0c99b89 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_SummarizeSubscriptionScope.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "policyStatesSummaryResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$top": 5 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#summary/$entity", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false", + "nonCompliantResources": 619, + "nonCompliantPolicies": 40 + }, + "policyAssignments": [ + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/a03db67e-a286-43c3-9098-b2da83d361ad", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/e46af646ebdb461dba708e01' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 557 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d9da7e80af6344ab9d342aa7' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 557 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49", + "policySetDefinitionId": "", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/dcda79d769674aea8bfcaa49' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/c8b79b49-a579-4045-984e-1b249ab8b474'", + "nonCompliantResources": 557 + } + } + ] + }, + { + "policyAssignmentId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a", + "policySetDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policysetdefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a'", + "nonCompliantResources": 557, + "nonCompliantPolicies": 1 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policyassignments/1ef5d536aec743a0aa801c1a' and PolicyDefinitionId eq '/providers/microsoft.management/managementgroups/myManagementGroup/providers/microsoft.authorization/policydefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d'", + "nonCompliantResources": 557 + } + } + ] + }, + { + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policysetdefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29'", + "nonCompliantResources": 552, + "nonCompliantPolicies": 3 + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1'", + "nonCompliantResources": 552 + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/locationauditdefinition'", + "nonCompliantResources": 29 + } + }, + { + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682", + "effect": "audit", + "results": { + "queryResultsUri": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2017-12-12-preview&$from=2018-02-12 19:48:53Z&$to=2018-02-13 19:48:53Z&$filter=IsCompliant eq false and PolicyAssignmentId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29' and PolicyDefinitionId eq '/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e3682'", + "nonCompliantResources": 2 + } + } + ] + } + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..9d9e4f61d44f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/examples/PolicyStates_TimeRangeSortSelectTop.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2017-12-12-preview", + "$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/policyStates/$metadata#latest", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-06T17:58:00Z", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myrg1", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg1/providers/Microsoft.Storage/storageAccounts/mysa1" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2018-02-06T17:58:00Z", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/8cb1e007-947f-423a-ad0c-7ab7dc7d0255/providers/Microsoft.Authorization/policyAssignments/1654a0254ab34920a60f94eb", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myrg2", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourceGroups/myrg2/providers/Microsoft.Storage/storageAccounts/mysa2" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyEvents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyEvents.json new file mode 100644 index 000000000000..410b9616fc2d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyEvents.json @@ -0,0 +1,918 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyEventsClient", + "version": "2017-12-12-preview" + }, + "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" + } + ], + "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" } + } + } + }, + "/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 seperated 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" + }, + "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" + } + }, + "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" + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + } + } + }, + "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" + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyStates.json new file mode 100644 index 000000000000..e1bfb3e4db29 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/preview/2017-12-12-preview/policyStates.json @@ -0,0 +1,1512 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyStatesClient", + "version": "2017-12-12-preview" + }, + "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/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForManagementGroup", + "description": "Queries policy states for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at management group scope": { "$ref": "./examples/PolicyStates_QueryManagementGroupScope.json" } + } + } + }, + "/providers/{managementGroupsNamespace}/managementGroups/{managementGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForManagementGroup", + "description": "Summarizes policy states for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/managementGroupsNamespaceParameter" + }, + { + "$ref": "#/parameters/managementGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at management group scope": { "$ref": "./examples/PolicyStates_SummarizeManagementGroupScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForSubscription", + "description": "Queries policy states for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionScope.json" }, + "Time range; sort, select and limit": { "$ref": "./examples/PolicyStates_TimeRangeSortSelectTop.json" }, + "Filter and group with aggregate": { "$ref": "./examples/PolicyStates_FilterAndGroupByWithAggregate.json" }, + "Filter and group without aggregate": { "$ref": "./examples/PolicyStates_FilterAndGroupByWithoutAggregate.json" }, + "Filter and aggregate only": { "$ref": "./examples/PolicyStates_FilterAndAggregateOnly.json" }, + "Filter and multiple groups": { "$ref": "./examples/PolicyStates_FilterAndMultipleGroups.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForSubscription", + "description": "Summarizes policy states for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at subscription scope": { "$ref": "./examples/PolicyStates_SummarizeSubscriptionScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResourceGroup", + "description": "Queries policy states for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at resource group scope": { "$ref": "./examples/PolicyStates_QueryResourceGroupScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForResourceGroup", + "description": "Summarizes policy states for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at resource group scope": { "$ref": "./examples/PolicyStates_SummarizeResourceGroupScope.json" } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResource", + "description": "Queries policy states for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query all policy states at resource scope": { "$ref": "./examples/PolicyStates_QueryResourceScope.json" }, + "Query all policy states at subscription level resource scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelResourceScope.json" }, + "Query all policy states at nested resource scope": { "$ref": "./examples/PolicyStates_QueryNestedResourceScope.json" }, + "Query all policy states at subscription level nested resource scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json" } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForResource", + "description": "Summarizes policy states for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/resourceIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at resource scope": { "$ref": "./examples/PolicyStates_SummarizeResourceScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForPolicySetDefinition", + "description": "Queries policy states for the subscription level policy set definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription level policy set definition scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForPolicySetDefinition", + "description": "Summarizes policy states for the subscription level policy set definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policySetDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy set definition scope": { "$ref": "./examples/PolicyStates_SummarizeSubscriptionLevelPolicySetDefinitionScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyDefinitions/{policyDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForPolicyDefinition", + "description": "Queries policy states for the subscription level policy definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription level policy definition scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyDefinitions/{policyDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForPolicyDefinition", + "description": "Summarizes policy states for the subscription level policy definition.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy definition scope": { "$ref": "./examples/PolicyStates_SummarizeSubscriptionLevelPolicyDefinitionScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForSubscriptionLevelPolicyAssignment", + "description": "Queries policy states for the subscription level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at subscription level policy assignment scope": { "$ref": "./examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForSubscriptionLevelPolicyAssignment", + "description": "Summarizes policy states for the subscription level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy assignment scope": { "$ref": "./examples/PolicyStates_SummarizeSubscriptionLevelPolicyAssignmentScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { + "post": { + "operationId": "PolicyStates_ListQueryResultsForResourceGroupLevelPolicyAssignment", + "description": "Queries policy states for the resource group level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesResourceParameter" + }, + { + "$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/PolicyStatesQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query latest at resource group level policy assignment scope": { "$ref": "./examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize": { + "post": { + "operationId": "PolicyStates_SummarizeForResourceGroupLevelPolicyAssignment", + "description": "Summarizes policy states for the resource group level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyStatesSummaryResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "Summarize results.", + "schema": { + "$ref": "#/definitions/SummarizeResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Summarize at policy assignment scope": { "$ref": "./examples/PolicyStates_SummarizeResourceGroupLevelPolicyAssignmentScope.json" } + } + } + }, + "/providers/Microsoft.PolicyInsights/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists available operations.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of available operations.", + "schema": { + "$ref": "#/definitions/OperationsListResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "List operations": { "$ref": "./examples/PolicyStates_ListOperations.json" } + } + } + }, + "/{scope}/providers/Microsoft.PolicyInsights/policyStates/$metadata": { + "get": { + "operationId": "PolicyStates_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/PolicyStates_GetMetadata.json" } + } + } + } + }, + "definitions": { + "PolicyStatesQueryResults": { + "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 state records returned.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyState" + } + } + } + }, + "PolicyState": { + "type": "object", + "description": "Policy state record.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since policy state 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 state 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 seperated 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" + } + }, + "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" + } + }, + "SummarizeResults": { + "description": "Summarize action 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 summaries returned; always set to 1.", + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 1 + }, + "value": { + "description": "Summarize action results.", + "type": "array", + "items": { + "$ref": "#/definitions/Summary" + } + } + } + }, + "Summary": { + "description": "Summary results.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since summaries 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" + }, + "results": { + "description": "Non-compliance summary for all policy assignments.", + "$ref": "#/definitions/SummaryResults" + }, + "policyAssignments": { + "description": "Policy assignments summary.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyAssignmentSummary" + } + } + } + }, + "SummaryResults": { + "description": "Non-compliance summary on a particular summary level.", + "properties": { + "queryResultsUri": { + "description": "HTTP POST URI for queryResults action on Microsoft.PolicyInsights to retrieve raw results for the non-compliance summary.", + "type": "string" + }, + "nonCompliantResources": { + "description": "Number of non-compliant resources.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "nonCompliantPolicies": { + "description": "Number of non-compliant policies.", + "type": "integer", + "format": "int32", + "minimum": 0 + } + } + }, + "PolicyAssignmentSummary": { + "description": "Policy assignment summary.", + "properties": { + "policyAssignmentId": { + "description": "Policy assignment ID.", + "type": "string" + }, + "policySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "type": "string" + }, + "results": { + "description": "Non-compliance summary for the policy assignment.", + "$ref": "#/definitions/SummaryResults" + }, + "policyDefinitions": { + "description": "Policy definitions summary.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDefinitionSummary" + } + } + } + }, + "PolicyDefinitionSummary": { + "description": "Policy definition summary.", + "properties": { + "policyDefinitionId": { + "description": "Policy definition ID.", + "type": "string" + }, + "effect": { + "description": "Policy effect, i.e. policy definition action.", + "type": "string" + }, + "results": { + "description": "Non-compliance summary for the policy definition.", + "$ref": "#/definitions/SummaryResults" + } + } + }, + "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" + }, + "message": { + "description": "Description of the error.", + "type": "string" + } + } + } + } + }, + "OperationsListResults": { + "description": "List of available operations.", + "properties": { + "@odata.count": { + "description": "OData entity count; represents the number of operations returned.", + "type": "integer", + "format": "int32", + "minimum": 1 + }, + "value": { + "description": "List of available operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Operation definition.", + "properties": { + "name": { + "description": "Operation name.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider name.", + "type": "string" + }, + "resource": { + "description": "Resource name on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation name.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + } + } + }, + "MetadataDocument": { + "description": "Metadata XML document.", + "type": "string" + } + }, + "parameters": { + "policyStatesResourceParameter": { + "name": "policyStatesResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "default", + "latest" + ], + "x-ms-enum": { + "name": "PolicyStatesResource", + "modelAsString": true + }, + "description": "The virtual resource under PolicyStates resource type. In a given time range, 'latest' represents the latest policy state(s), whereas 'default' represents all policy state(s).", + "x-ms-parameter-location": "method" + }, + "policyStatesSummaryResourceParameter": { + "name": "policyStatesSummaryResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "latest" + ], + "description": "The virtual resource under PolicyStates resource type for summarize action. In a given time range, 'latest' represents the latest policy state(s) and is the only allowed value.", + "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" + } + } +} \ No newline at end of file diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md new file mode 100644 index 000000000000..6f107314e9b9 --- /dev/null +++ b/specification/policyinsights/resource-manager/readme.md @@ -0,0 +1,213 @@ +# PolicyInsights + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for PolicyInsights. + + + +--- +## Getting Started +To build the SDK for PolicyInsights, 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 PolicyInsights API. + +``` yaml +title: PolicyInsightsClient +openapi-type: arm +tag: package-2017-12 +``` + +### Validations +Run validations when `--validate` is specified on command line + +``` yaml $(validate) +azure-validator: true +semantic-validator: true +model-validator: true +message-format: json +``` + +## Suppression +``` yaml +directive: + - suppress: EnumInsteadOfBoolean + reason: The data type in store is boolean. If we change the type in RP, it will break existing clients, and we will incur runtime conversion cost. + where: + - $.definitions.PolicyEvent.properties.isCompliant + - $.definitions.PolicyState.properties.isCompliant + + - suppress: NonApplicationJsonType + reason: ODATA $metadata endpoint for each resource type returns metadata document as XML. + where: + - $.paths["/{scope}/providers/Microsoft.PolicyInsights/policyEvents/$metadata"].get.produces[0] + - $.paths["/{scope}/providers/Microsoft.PolicyInsights/policyStates/$metadata"].get.produces[0] + +``` + +### Tag: package-2017-12 + +These settings apply only when `--tag=package-2017-12` is specified on the command line. + +``` yaml $(tag) == 'package-2017-12' +input-file: +- Microsoft.PolicyInsights/preview/2017-12-12-preview/policyEvents.json +- Microsoft.PolicyInsights/preview/2017-12-12-preview/policyStates.json +``` + + +### Tag: package-2017-10 + +These settings apply only when `--tag=package-2017-10` is specified on the command line. + +``` yaml $(tag) == 'package-2017-10' +input-file: +- Microsoft.PolicyInsights/preview/2017-10-17-preview/policyEvents.json +- Microsoft.PolicyInsights/preview/2017-10-17-preview/policyStates.json +``` + + +### Tag: package-2017-08 + +These settings apply only when `--tag=package-2017-08` is specified on the command line. + +``` yaml $(tag) == 'package-2017-08' +input-file: +- Microsoft.PolicyInsights/preview/2017-08-09-preview/policyEvents.json +- Microsoft.PolicyInsights/preview/2017-08-09-preview/policyStates.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-libraries-for-java + - repo: azure-sdk-for-go +``` + + +## 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.PolicyInsights + output-folder: $(csharp-sdks-folder)/PolicyInsights/Management/Management.PolicyInsights/Generated + 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.policyinsights + package-name: azure-mgmt-policyinsights + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-policyinsights/azure/mgmt/policyinsights +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-policyinsights +``` + + +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: policyinsights + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2017-12 + - tag: package-2017-10 + - tag: package-2017-08 +``` + +### Tag: package-2017-12 and go + +These settings apply only when `--tag=package-2017-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-12' && $(go) +output-folder: $(go-sdk-folder)/services/policyinsights/mgmt/2017-12-12-preview/policyinsights +``` + +### Tag: package-2017-10 and go + +These settings apply only when `--tag=package-2017-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-10' && $(go) +output-folder: $(go-sdk-folder)/services/policyinsights/mgmt/2017-10-17-preview/policyinsights +``` + +### Tag: package-2017-08 and go + +These settings apply only when `--tag=package-2017-08 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-08' && $(go) +output-folder: $(go-sdk-folder)/services/policyinsights/mgmt/2017-08-09-preview/policyinsights +``` + + +## 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 + fluent: true + namespace: com.microsoft.azure.management.policyinsights + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-policyinsights +``` \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/CheckNameAvailability.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..586fe8d07a10 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "nameAvailabilityRequest": { + "name": "name1", + "type": "Microsoft.DBforPostgreSQL" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "message": "", + "reason": "" + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationCreateOrUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationCreateOrUpdate.json new file mode 100644 index 000000000000..052fc5fbe0b9 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationCreateOrUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "configurationName": "array_nulls", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "value": "off", + "source": "user-override" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "off", + "description": "Enable input of NULL elements in arrays.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "user-override" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationGet.json new file mode 100644 index 000000000000..6bc2f0588ada --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "configurationName": "array_nulls", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "on", + "description": "Enable input of NULL elements in arrays.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationListByServer.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationListByServer.json new file mode 100644 index 000000000000..a0eb56503134 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ConfigurationListByServer.json @@ -0,0 +1,1056 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "value": "on", + "description": "Enable input of NULL elements in arrays.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/array_nulls", + "name": "array_nulls", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "safe_encoding", + "description": "Sets whether \"\\'\" is allowed in string literals.", + "defaultValue": "safe_encoding", + "dataType": "Enumeration", + "allowedValues": "safe_encoding,on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/backslash_quote", + "name": "backslash_quote", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "hex", + "description": "Sets the output format for bytea.", + "defaultValue": "hex", + "dataType": "Enumeration", + "allowedValues": "escape,hex", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/bytea_output", + "name": "bytea_output", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Check function bodies during CREATE FUNCTION.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/check_function_bodies", + "name": "check_function_bodies", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "sql_ascii", + "description": "Sets the client's character set encoding.", + "defaultValue": "sql_ascii", + "dataType": "Enumeration", + "allowedValues": "BIG5,EUC_CN,EUC_JP,EUC_JIS_2004,EUC_KR,EUC_TW,GB18030,GBK,ISO_8859_5,ISO_8859_6,ISO_8859_7,ISO_8859_8,JOHAB,KOI8R,KOI8U,LATIN1,LATIN2,LATIN3,LATIN4,LATIN5,LATIN6,LATIN7,LATIN8,LATIN9,LATIN10,MULE_INTERNAL,SJIS,SHIFT_JIS_2004,SQL_ASCII,UHC,UTF8,WIN866,WIN874,WIN1250,WIN1251,WIN1252,WIN1253,WIN1254,WIN1255,WIN1256,WIN1257,WIN1258", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/client_encoding", + "name": "client_encoding", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "notice", + "description": "Sets the message levels that are sent to the client.", + "defaultValue": "notice", + "dataType": "Enumeration", + "allowedValues": "debug5,debug4,debug3,debug2,debug1,log,notice,warning,error", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/client_min_messages", + "name": "client_min_messages", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "partition", + "description": "Enables the planner to use constraints to optimize queries.", + "defaultValue": "partition", + "dataType": "Enumeration", + "allowedValues": "partition,on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/constraint_exclusion", + "name": "constraint_exclusion", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0.005", + "description": "Sets the planner's estimate of the cost of processing each index entry during an index scan.", + "defaultValue": "0.005", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/cpu_index_tuple_cost", + "name": "cpu_index_tuple_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0.0025", + "description": "Sets the planner's estimate of the cost of processing each operator or function call.", + "defaultValue": "0.0025", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/cpu_operator_cost", + "name": "cpu_operator_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0.01", + "description": "Sets the planner's estimate of the cost of processing each tuple (row).", + "defaultValue": "0.01", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/cpu_tuple_cost", + "name": "cpu_tuple_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0.1", + "description": "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved.", + "defaultValue": "0.1", + "dataType": "Numeric", + "allowedValues": "0-1", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/cursor_tuple_fraction", + "name": "cursor_tuple_fraction", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "iso, mdy", + "description": "Sets the display format for date and time values.", + "defaultValue": "iso, mdy", + "dataType": "String", + "allowedValues": "(iso|postgres|sql|german)\\,\\s(dmy|mdy|ymd)", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/datestyle", + "name": "datestyle", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "1000", + "description": "Sets the amount of time, in milliseconds, to wait on a lock before checking for deadlock.", + "defaultValue": "1000", + "dataType": "Integer", + "allowedValues": "1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/deadlock_timeout", + "name": "deadlock_timeout", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs each query's parse tree.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/debug_print_parse", + "name": "debug_print_parse", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs each query's execution plan.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/debug_print_plan", + "name": "debug_print_plan", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs each query's rewritten parse tree.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/debug_print_rewritten", + "name": "debug_print_rewritten", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "100", + "description": "Sets the default statistics target.", + "defaultValue": "100", + "dataType": "Integer", + "allowedValues": "1-10000", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/default_statistics_target", + "name": "default_statistics_target", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "pg_catalog.english", + "description": "Sets default text search configuration.", + "defaultValue": "pg_catalog.english", + "dataType": "String", + "allowedValues": "[A-Za-z\\._]+", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/default_text_search_config", + "name": "default_text_search_config", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Sets the default deferrable status of new transactions.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/default_transaction_deferrable", + "name": "default_transaction_deferrable", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "read committed", + "description": "Sets the transaction isolation level of each new transaction.", + "defaultValue": "read committed", + "dataType": "Enumeration", + "allowedValues": "serializable,repeatable read,read committed,read uncommitted", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/default_transaction_isolation", + "name": "default_transaction_isolation", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Sets the default read-only status of new transactions.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/default_transaction_read_only", + "name": "default_transaction_read_only", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Create new tables with OIDs by default.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/default_with_oids", + "name": "default_with_oids", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of bitmap-scan plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_bitmapscan", + "name": "enable_bitmapscan", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of hashed aggregation plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_hashagg", + "name": "enable_hashagg", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of hash join plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_hashjoin", + "name": "enable_hashjoin", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of index-only-scan plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_indexonlyscan", + "name": "enable_indexonlyscan", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of index-scan plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_indexscan", + "name": "enable_indexscan", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of materialization.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_material", + "name": "enable_material", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of merge join plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_mergejoin", + "name": "enable_mergejoin", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of nested-loop join plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_nestloop", + "name": "enable_nestloop", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of sequential-scan plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_seqscan", + "name": "enable_seqscan", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of explicit sort steps.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_sort", + "name": "enable_sort", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables the planner's use of TID scan plans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/enable_tidscan", + "name": "enable_tidscan", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Warn about backslash escapes in ordinary string literals.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/escape_string_warning", + "name": "escape_string_warning", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Terminate session on any error.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/exit_on_error", + "name": "exit_on_error", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the number of digits displayed for floating-point values.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "-15-3", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/extra_float_digits", + "name": "extra_float_digits", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "8", + "description": "Sets the FROM-list size beyond which subqueries are not collapsed.", + "defaultValue": "8", + "dataType": "Integer", + "allowedValues": "1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/from_collapse_limit", + "name": "from_collapse_limit", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enables genetic query optimization.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo", + "name": "geqo", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "5", + "description": "GEQO: effort is used to set the default for other GEQO parameters.", + "defaultValue": "5", + "dataType": "Integer", + "allowedValues": "1-10", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo_effort", + "name": "geqo_effort", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "GEQO: number of iterations of the algorithm.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo_generations", + "name": "geqo_generations", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "GEQO: number of individuals in the population.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo_pool_size", + "name": "geqo_pool_size", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0.0", + "description": "GEQO: seed for random path selection.", + "defaultValue": "0.0", + "dataType": "Numeric", + "allowedValues": "0-1", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo_seed", + "name": "geqo_seed", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "2.0", + "description": "GEQO: selective pressure within the population.", + "defaultValue": "2.0", + "dataType": "Numeric", + "allowedValues": "1.5-2", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo_selection_bias", + "name": "geqo_selection_bias", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "12", + "description": "Sets the threshold of FROM items beyond which GEQO is used.", + "defaultValue": "12", + "dataType": "Integer", + "allowedValues": "2-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/geqo_threshold", + "name": "geqo_threshold", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the maximum allowed result for exact search by GIN.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/gin_fuzzy_search_limit", + "name": "gin_fuzzy_search_limit", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "postgres", + "description": "Sets the display format for interval values.", + "defaultValue": "postgres", + "dataType": "Enumeration", + "allowedValues": "postgres,postgres_verbose,sql_standard,iso_8601", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/intervalstyle", + "name": "intervalstyle", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "8", + "description": "Sets the FROM-list size beyond which JOIN constructs are not flattened.", + "defaultValue": "8", + "dataType": "Integer", + "allowedValues": "1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/join_collapse_limit", + "name": "join_collapse_limit", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the maximum allowed duration (in milliseconds) of any wait for a lock. 0 turns this off.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/lock_timeout", + "name": "lock_timeout", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs each checkpoint.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_checkpoints", + "name": "log_checkpoints", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs each successful connection.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_connections", + "name": "log_connections", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs end of a session, including duration.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_disconnections", + "name": "log_disconnections", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs the duration of each completed SQL statement.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_duration", + "name": "log_duration", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "default", + "description": "Sets the verbosity of logged messages.", + "defaultValue": "default", + "dataType": "Enumeration", + "allowedValues": "terse,default,verbose", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_error_verbosity", + "name": "log_error_verbosity", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Logs long lock waits.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_lock_waits", + "name": "log_lock_waits", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "-1", + "description": "Sets the minimum execution time (in milliseconds) above which statements will be logged. -1 disables logging statement durations.", + "defaultValue": "-1", + "dataType": "Integer", + "allowedValues": "-1-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_min_duration_statement", + "name": "log_min_duration_statement", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "error", + "description": "Causes all statements generating error at or above this level to be logged.", + "defaultValue": "error", + "dataType": "Enumeration", + "allowedValues": "debug5,debug4,debug3,debug2,debug1,info,notice,warning,error,log,fatal,panic", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_min_error_statement", + "name": "log_min_error_statement", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "warning", + "description": "Sets the message levels that are logged.", + "defaultValue": "warning", + "dataType": "Enumeration", + "allowedValues": "debug5,debug4,debug3,debug2,debug1,info,notice,warning,error,log,fatal,panic", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_min_messages", + "name": "log_min_messages", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "none", + "description": "Sets the type of statements logged.", + "defaultValue": "none", + "dataType": "Enumeration", + "allowedValues": "none,ddl,mod,all", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_statement", + "name": "log_statement", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "64", + "description": "Sets the maximum number of locks per transaction.", + "defaultValue": "64", + "dataType": "Integer", + "allowedValues": "10-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/max_locks_per_transaction", + "name": "max_locks_per_transaction", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "64", + "description": "Sets the maximum number of predicate locks per transaction.", + "defaultValue": "64", + "dataType": "Integer", + "allowedValues": "10-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/max_pred_locks_per_transaction", + "name": "max_pred_locks_per_transaction", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the maximum number of simultaneously prepared transactions.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-8388607", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/max_prepared_transactions", + "name": "max_prepared_transactions", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "When generating SQL fragments, quote all identifiers.", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/quote_all_identifiers", + "name": "quote_all_identifiers", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "4.0", + "description": "Sets the planner's estimate of the cost of a nonsequentially fetched disk page.", + "defaultValue": "4.0", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/random_page_cost", + "name": "random_page_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "\"$user\", public", + "description": "Sets the schema search order for names that are not schema-qualified.", + "defaultValue": "\"$user\", public", + "dataType": "String", + "allowedValues": "[A-Za-z.\"$, ]+", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/search_path", + "name": "search_path", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "1.0", + "description": "Sets the planner's estimate of the cost of a sequentially fetched disk page.", + "defaultValue": "1.0", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/seq_page_cost", + "name": "seq_page_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Causes subtables to be included by default in various commands.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/sql_inheritance", + "name": "sql_inheritance", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Causes '...' strings to treat backslashes literally.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/standard_conforming_strings", + "name": "standard_conforming_strings", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the maximum allowed duration (in milliseconds) of any statement. 0 turns this off.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/statement_timeout", + "name": "statement_timeout", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Enable synchronized sequential scans.", + "defaultValue": "on", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/synchronize_seqscans", + "name": "synchronize_seqscans", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "on", + "description": "Sets the current transaction's synchronization level.", + "defaultValue": "on", + "dataType": "Enumeration", + "allowedValues": "local,remote_write,on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/synchronous_commit", + "name": "synchronous_commit", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Treats \"expr=NULL\" as \"expr IS NULL\".", + "defaultValue": "off", + "dataType": "Boolean", + "allowedValues": "on,off", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/transform_null_equals", + "name": "transform_null_equals", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "base64", + "description": "Sets how binary values are to be encoded in XML.", + "defaultValue": "base64", + "dataType": "Enumeration", + "allowedValues": "base64,hex", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/xmlbinary", + "name": "xmlbinary", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "content", + "description": "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments.", + "defaultValue": "content", + "dataType": "Enumeration", + "allowedValues": "content,document", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/xmloption", + "name": "xmloption", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "off", + "description": "Forces use of parallel query facilities.", + "defaultValue": "off", + "dataType": "Enumeration", + "allowedValues": "off,on,regress", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/force_parallel_mode", + "name": "force_parallel_mode", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the maximum allowed duration of any idling transaction.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-2147483647", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/idle_in_transaction_session_timeout", + "name": "idle_in_transaction_session_timeout", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0", + "description": "Sets the maximum number of parallel processes per executor node.", + "defaultValue": "0", + "dataType": "Integer", + "allowedValues": "0-1024", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/max_parallel_workers_per_gather", + "name": "max_parallel_workers_per_gather", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "8388608", + "description": "Sets the minimum size of relations to be considered for parallel scan.", + "defaultValue": "8388608", + "dataType": "Integer", + "allowedValues": "0-715827882", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/min_parallel_relation_size", + "name": "min_parallel_relation_size", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "1000", + "description": "Sets the planner's estimate of the cost of starting up worker processes for parallel query.", + "defaultValue": "1000", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/parallel_setup_cost", + "name": "parallel_setup_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "0.1", + "description": "Sets the planner's estimate of the cost of passing each tuple (row) from worker to master backend.", + "defaultValue": "0.1", + "dataType": "Numeric", + "allowedValues": "0-1.79769e+308", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/parallel_tuple_cost", + "name": "parallel_tuple_cost", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + }, + { + "properties": { + "value": "3", + "description": "Sets how many days a log file is saved for.", + "defaultValue": "3", + "dataType": "Integer", + "allowedValues": "1-7", + "source": "system-default" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/configurations/log_retention_days", + "name": "log_retention_days", + "type": "Microsoft.DBforPostgreSQL/servers/configurations" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseCreate.json new file mode 100644 index 000000000000..bc9de03c9975 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "charset":"UTF8", + "collation":"English_United States.1252" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforPostgreSQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforPostgreSQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseDelete.json new file mode 100644 index 000000000000..de60cc340354 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseGet.json new file mode 100644 index 000000000000..714334e55c42 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforPostgreSQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseListByServer.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseListByServer.json new file mode 100644 index 000000000000..26139f63a0f0 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/DatabaseListByServer.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforPostgreSQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/databases/db2", + "name": "db2", + "type": "Microsoft.DBforPostgreSQL/servers/databases", + "properties": { + "charset": "UTF8", + "collation": "English_United States.1252" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleCreate.json new file mode 100644 index 000000000000..6bf93839798e --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "startIpAddress":"0.0.0.0", + "endIpAddress":"255.255.255.255" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforPostgreSQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforPostgreSQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleDelete.json new file mode 100644 index 000000000000..9bd78a018f7d --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleGet.json new file mode 100644 index 000000000000..74258e8a1443 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "firewallRuleName": "rule1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforPostgreSQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleListByServer.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleListByServer.json new file mode 100644 index 000000000000..672535f0c4c3 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/FirewallRuleListByServer.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/firewallRules/rule1", + "name": "rule1", + "type": "Microsoft.DBforPostgreSQL/servers/firewallRules", + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/firewallRules/rule2", + "name": "rule2", + "type": "Microsoft.DBforPostgreSQL/servers/firewallRules", + "properties": { + "startIpAddress": "1.0.0.0", + "endIpAddress": "255.0.0.0" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/LogFileListByServer.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/LogFileListByServer.json new file mode 100644 index 000000000000..3879fd1dadc5 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/LogFileListByServer.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "name": "postgresql-2017-06-22_010000.log", + "sizeInKB": 4, + "createdTime": "0001-01-01T00:00:00+00:00", + "lastModifiedTime": "2017-06-22T01:59:36+00:00", + "type": "text", + "url": "https://wasd2stageneu1btlm4.file.core.windows.net/42679871f6cc4302b39ab9c2e3044df3/pg_log/postgresql-2017-06-22_010000.log?sv=2015-04-05&sr=f&sig=gqIQsa6VyGyUNpzYYPWLP5gM%2BeF1so9GYbHKu6Zs0DM%3D&se=2017-06-22T03%3A21%3A09Z&sp=r" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/logFiles/postgresql-2017-06-22_010000.log", + "name": "postgresql-2017-06-22_010000.log", + "type": "Microsoft.DBforPostgreSQL/servers/logFiles" + }, + { + "properties": { + "name": "postgresql-2017-06-22_020000.log", + "sizeInKB": 1, + "createdTime": "0001-01-01T00:00:00+00:00", + "lastModifiedTime": "2017-06-22T02:19:36+00:00", + "type": "text", + "url": "https://wasd2stageneu1btlm4.file.core.windows.net/42679871f6cc4302b39ab9c2e3044df3/pg_log/postgresql-2017-06-22_020000.log?sv=2015-04-05&sr=f&sig=i99UWBlYfR0tKaxix8yHAOnfym4HV9Auto6BbZogyRs%3D&se=2017-06-22T03%3A21%3A09Z&sp=r" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver/logFiles/postgresql-2017-06-22_020000.log", + "name": "postgresql-2017-06-22_020000.log", + "type": "Microsoft.DBforPostgreSQL/servers/logFiles" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/OperationList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/OperationList.json new file mode 100644 index 000000000000..59f7e3bcadc2 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/OperationList.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DBforPostgreSQL/locations/performanceTiers/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Performance Tiers", + "operation": "List Performance Tiers", + "description": "Returns the list of Performance Tiers available." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "List/Get PostgreSQL Servers", + "description": "Return the list of servers or gets the properties for the specified server." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/write", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "Create/Update PostgreSQL Server", + "description": "Creates a server with the specified parameters or update the properties or tags for the specified server." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/delete", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "PostgreSQL Server", + "operation": "Delete PostgreSQL Server", + "description": "Deletes an existing server." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/performanceTiers/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Performance Tiers", + "operation": "List Performance Tiers", + "description": "Returns the list of Performance Tiers available." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/firewallRules/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "List/Get Firewall Rules", + "description": "Return the list of firewall rules for a server or gets the properties for the specified firewall rule." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/firewallRules/write", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "Create/Update Firewall Rule", + "description": "Creates a firewall rule with the specified parameters or update an existing rule." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/firewallRules/delete", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Firewall Rules", + "operation": "Delete Firewall Rule", + "description": "Deletes an existing firewall rule." + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Database Metric Definition", + "operation": "Get database metric definitions", + "description": "Return types of metrics that are available for databases" + }, + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "cpu_percent", + "displayName": "CPU percent", + "displayDescription": "CPU percent", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "compute_limit", + "displayName": "Compute Unit limit", + "displayDescription": "Compute Unit limit", + "unit": "Count", + "aggregationType": "Average" + }, + { + "name": "compute_consumption_percent", + "displayName": "Compute Unit percentage", + "displayDescription": "Compute Unit percentage", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "memory_percent", + "displayName": "Memory percent", + "displayDescription": "Memory percent", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "io_consumption_percent", + "displayName": "IO percent", + "displayDescription": "IO percent", + "unit": "Percent", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "storage_percent", + "displayName": "Storage percentage", + "displayDescription": "Storage percentage", + "unit": "Percent", + "aggregationType": "Average" + }, + { + "name": "storage_used", + "displayName": "Storage used", + "displayDescription": "Storage used", + "unit": "Bytes", + "aggregationType": "Average" + }, + { + "name": "storage_limit", + "displayName": "Storage limit", + "displayDescription": "Storage limit", + "unit": "Bytes", + "aggregationType": "Average" + }, + { + "name": "active_connections", + "displayName": "Total active connections", + "displayDescription": "Total active connections", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": true + }, + { + "name": "connections_failed", + "displayName": "Total failed connections", + "displayDescription": "Total failed connections", + "unit": "Count", + "aggregationType": "Average", + "fillGapWithZero": true + } + ] + } + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Database Metric Definition", + "operation": "Read diagnostic setting", + "description": "Gets the disagnostic setting for the resource" + } + }, + { + "name": "Microsoft.DBforPostgreSQL/servers/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft DB for PostgreSQL", + "resource": "Database Metric Definition", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/PerformanceTiersListByLocation.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/PerformanceTiersListByLocation.json new file mode 100644 index 000000000000..31c938f6aa34 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/PerformanceTiersListByLocation.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "Basic", + "serviceLevelObjectives": [ + { + "edition": "Basic", + "vCore": 1, + "hardwareGeneration": "Gen4", + "id": "B_Gen4_1" + }, + { + "edition": "Basic", + "vCore": 2, + "hardwareGeneration": "Gen4", + "id": "B_Gen4_2" + }, + { + "edition": "Basic", + "vCore": 1, + "hardwareGeneration": "Gen5", + "id": "B_Gen5_1" + }, + { + "edition": "Basic", + "vCore": 2, + "hardwareGeneration": "Gen5", + "id": "B_Gen5_2" + } + ], + "minStorageMB": 5120, + "maxStorageMB": 1048576, + "minBackupRetentionDays": 7, + "maxBackupRetentionDays": 35 + }, + { + "id": "GeneralPurpose", + "serviceLevelObjectives": [ + { + "edition": "GeneralPurpose", + "vCore": 2, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_2" + }, + { + "edition": "GeneralPurpose", + "vCore": 4, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_4" + }, + { + "edition": "GeneralPurpose", + "vCore": 8, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_8" + }, + { + "edition": "GeneralPurpose", + "vCore": 16, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_16" + }, + { + "edition": "GeneralPurpose", + "vCore": 32, + "hardwareGeneration": "Gen4", + "id": "GP_Gen4_32" + }, + { + "edition": "GeneralPurpose", + "vCore": 2, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_2" + }, + { + "edition": "GeneralPurpose", + "vCore": 4, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_4" + }, + { + "edition": "GeneralPurpose", + "vCore": 8, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_8" + }, + { + "edition": "GeneralPurpose", + "vCore": 16, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_16" + }, + { + "edition": "GeneralPurpose", + "vCore": 32, + "hardwareGeneration": "Gen5", + "id": "GP_Gen5_32" + } + ], + "minStorageMB": 5120, + "maxStorageMB": 2097152, + "minBackupRetentionDays": 7, + "maxBackupRetentionDays": 35 + }, + { + "id": "MemoryOptimized", + "serviceLevelObjectives": [ + { + "edition": "MemoryOptimized", + "vCore": 2, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_2" + }, + { + "edition": "MemoryOptimized", + "vCore": 4, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_4" + }, + { + "edition": "MemoryOptimized", + "vCore": 8, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_8" + }, + { + "edition": "MemoryOptimized", + "vCore": 16, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_16" + }, + { + "edition": "MemoryOptimized", + "vCore": 32, + "hardwareGeneration": "Gen5", + "id": "MO_Gen5_32" + } + ], + "minStorageMB": 5120, + "maxStorageMB": 2097152, + "minBackupRetentionDays": 7, + "maxBackupRetentionDays": 35 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerCreate.json new file mode 100644 index 000000000000..d9f98c99fb76 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerCreate.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "location": "OneBox", + "properties": { + "administratorLogin": "cloudsa", + "administratorLoginPassword": "password", + "sslEnforcement": "Enabled", + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "createMode": "Default" + }, + "sku": { + "name": "SkuName", + "tier": "Basic", + "capacity": 2, + "family": "Gen4" + }, + "tags": { + "ElasticServer": "1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "tags": { + "elasticServer": "1" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "earliestRestoreDate": "2018-02-07T16:47:04.027+00:00" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "tags": { + "elasticServer": "1" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "earliestRestoreDate": "2018-02-07T16:47:04.027+00:00" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerDelete.json new file mode 100644 index 000000000000..17cf2924102c --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerGet.json new file mode 100644 index 000000000000..6d9273d3c99a --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerList.json new file mode 100644 index 000000000000..edc1887a7073 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerList.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver1", + "name": "testserver1", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver2", + "name": "testserver2", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerListByResourceGroup.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerListByResourceGroup.json new file mode 100644 index 000000000000..f10a235c4143 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerListByResourceGroup.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver1", + "name": "testserver1", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver2", + "name": "testserver2", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "tags": { + "elasticServer": "1" + }, + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "PGSQL_B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "properties": { + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "administratorLogin": "cloudsa", + "sslEnforcement": "Enabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com", + "version": "9.6" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerUpdate.json new file mode 100644 index 000000000000..0dbaa03fb484 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerUpdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2017-12-01-preview", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties":{ + "administratorLoginPassword":"newpassword", + "sslEnforcement": "Disabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/servers/testserver", + "name": "testserver", + "type": "Microsoft.DBforPostgreSQL/servers", + "location": "onebox", + "sku": { + "capacity": 2, + "family": "Gen4", + "name": "B_Gen4_2", + "size": null, + "tier": "Basic" + }, + "tags": { + "elasticServer": "1" + }, + "properties": { + "administratorLogin": "cloudsa", + "storageProfile": { + "storageMB": 128000, + "backupRetentionDays": 7, + "geoRedundantBackup": "Enabled" + }, + "sslEnforcement": "Disabled", + "userVisibleState": "Ready", + "fullyQualifiedDomainName": "testserver.test-vm1.onebox.xdb.mscds.com" + } + } + }, + "202": {} + } +} \ No newline at end of file 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 new file mode 100644 index 000000000000..55c8667ce500 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json @@ -0,0 +1,1709 @@ +{ + "swagger": "2.0", + "info": { + "title": "PostgreSQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, log files and configurations with new business model.", + "version": "2017-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.DBforPostgreSQL/servers/{serverName}": { + "put": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Create", + "x-ms-examples": { + "ServerCreate": { + "$ref": "./examples/ServerCreate.json" + } + }, + "description": "Creates a new server, or will overwrite an existing server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerForCreate" + }, + "description": "The required parameters for creating or updating a server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Update", + "x-ms-examples": { + "ServerUpdate": { + "$ref": "./examples/ServerUpdate.json" + } + }, + "description": "Updates an existing server. The request body can contain one to many of the properties present in the normal server definition.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerUpdateParameters" + }, + "description": "The required parameters for updating a server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Delete", + "x-ms-examples": { + "ServerDelete": { + "$ref": "./examples/ServerDelete.json" + } + }, + "description": "Deletes a server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_Get", + "x-ms-examples": { + "ServerGet": { + "$ref": "./examples/ServerGet.json" + } + }, + "description": "Gets information about a server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Server" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers": { + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_ListByResourceGroup", + "x-ms-examples": { + "ServerListByResourceGroup": { + "$ref": "./examples/ServerListByResourceGroup.json" + } + }, + "description": "List all the servers in a given resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforPostgreSQL/servers": { + "get": { + "tags": [ + "Servers" + ], + "operationId": "Servers_List", + "x-ms-examples": { + "ServerList": { + "$ref": "./examples/ServerList.json" + } + }, + "description": "List all the servers in a given subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/firewallRules/{firewallRuleName}": { + "put": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_CreateOrUpdate", + "x-ms-examples": { + "FirewallRuleCreate": { + "$ref": "./examples/FirewallRuleCreate.json" + } + }, + "description": "Creates a new firewall rule or updates an existing firewall rule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The required parameters for creating or updating a firewall rule." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Delete", + "x-ms-examples": { + "FirewallRuleDelete": { + "$ref": "./examples/FirewallRuleDelete.json" + } + }, + "description": "Deletes a server firewall rule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Get", + "x-ms-examples": { + "FirewallRuleGet": { + "$ref": "./examples/FirewallRuleGet.json" + } + }, + "description": "Gets information about a server firewall rule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/firewallRules": { + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_ListByServer", + "x-ms-examples": { + "FirewallRuleList": { + "$ref": "./examples/FirewallRuleListByServer.json" + } + }, + "description": "List all the firewall rules in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/databases/{databaseName}": { + "put": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "DatabaseCreate": { + "$ref": "./examples/DatabaseCreate.json" + } + }, + "description": "Creates a new database or updates an existing database.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The required parameters for creating or updating a database." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "operationId": "Databases_Delete", + "x-ms-examples": { + "DatabaseDelete": { + "$ref": "./examples/DatabaseDelete.json" + } + }, + "description": "Deletes a database.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Databases" + ], + "operationId": "Databases_Get", + "x-ms-examples": { + "DatabaseGet": { + "$ref": "./examples/DatabaseGet.json" + } + }, + "description": "Gets information about a database.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Database" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "operationId": "Databases_ListByServer", + "x-ms-examples": { + "DatabaseList": { + "$ref": "./examples/DatabaseListByServer.json" + } + }, + "description": "List all the databases in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/configurations/{configurationName}": { + "put": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_CreateOrUpdate", + "x-ms-examples": { + "ConfigurationCreateOrUpdate": { + "$ref": "./examples/ConfigurationCreateOrUpdate.json" + } + }, + "description": "Updates a configuration of a server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Configuration" + }, + "description": "The required parameters for updating a server configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_Get", + "x-ms-examples": { + "ConfigurationGet": { + "$ref": "./examples/ConfigurationGet.json" + } + }, + "description": "Gets information about a configuration of server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/configurations": { + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_ListByServer", + "x-ms-examples": { + "ConfigurationList": { + "$ref": "./examples/ConfigurationListByServer.json" + } + }, + "description": "List all the configurations in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/logFiles": { + "get": { + "tags": [ + "LogFiles" + ], + "operationId": "LogFiles_ListByServer", + "x-ms-examples": { + "LogFileList": { + "$ref": "./examples/LogFileListByServer.json" + } + }, + "description": "List all the log files in a given server.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogFileListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforPostgreSQL/locations/{locationName}/performanceTiers": { + "get": { + "tags": [ + "LocationBasedPerformanceTier" + ], + "operationId": "LocationBasedPerformanceTier_List", + "x-ms-examples": { + "PerformanceTiersList": { + "$ref": "./examples/PerformanceTiersListByLocation.json" + } + }, + "description": "List all the performance tiers at specified location in a given subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PerformanceTierListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforPostgreSQL/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "operationId": "CheckNameAvailability_Execute", + "x-ms-examples": { + "NameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "description": "Check the availability of name for resource", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "nameAvailabilityRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityRequest" + }, + "description": "The required parameters for checking if resource name is available." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + } + } + } + }, + "/providers/Microsoft.DBforPostgreSQL/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "OperationList": { + "$ref": "./examples/OperationList.json" + } + }, + "description": "Lists all of the available REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + } + } + } + }, + "definitions": { + "ServerVersion": { + "type": "string", + "description": "The version of a server.", + "enum": [ + "9.5", + "9.6" + ], + "x-ms-enum": { + "name": "ServerVersion", + "modelAsString": true + } + }, + "SslEnforcement": { + "type": "string", + "description": "Enable ssl enforcement or not when connect to server.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "SslEnforcementEnum", + "modelAsString": false + } + }, + "ProxyResource": { + "description": "Resource properties.", + "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 + }, + "TrackedResource": { + "description": "Resource properties including location and tags for track resources.", + "properties": { + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "required": [ + "location" + ] + }, + "ServerProperties": { + "properties": { + "administratorLogin": { + "type": "string", + "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." + }, + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "Server version." + }, + "sslEnforcement": { + "$ref": "#/definitions/SslEnforcement", + "description": "Enable ssl enforcement or not when connect to server." + }, + "userVisibleState": { + "type": "string", + "description": "A state of a server that is visible to user.", + "enum": [ + "Ready", + "Dropping", + "Disabled" + ], + "x-ms-enum": { + "name": "ServerState", + "modelAsString": true + } + }, + "fullyQualifiedDomainName": { + "type": "string", + "description": "The fully qualified domain name of a server." + }, + "earliestRestoreDate": { + "type": "string", + "format": "date-time", + "description": "Earliest restore point creation time (ISO8601 format)" + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + } + }, + "description": "The properties of a server." + }, + "StorageProfile": { + "properties": { + "backupRetentionDays": { + "type": "integer", + "description": "Backup retention days for the server." + }, + "geoRedundantBackup": { + "type": "string", + "description": "Enable Geo-redundant or not for server backup.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "GeoRedundantBackup", + "modelAsString": true + } + }, + "storageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + } + }, + "description": "Storage Profile properties of a server" + }, + "ServerPropertiesForCreate": { + "discriminator": "createMode", + "required": [ + "createMode" + ], + "properties": { + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "Server version." + }, + "sslEnforcement": { + "$ref": "#/definitions/SslEnforcement", + "description": "Enable ssl enforcement or not when connect to server." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + }, + "createMode": { + "type": "string", + "description": "The mode to create a new server.", + "enum": [ + "Default", + "PointInTimeRestore" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + } + }, + "description": "The properties used to create a new server." + }, + "ServerPropertiesForDefaultCreate": { + "x-ms-discriminator-value": "Default", + "allOf": [ + { + "$ref": "#/definitions/ServerPropertiesForCreate" + } + ], + "properties": { + "administratorLogin": { + "type": "string", + "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." + }, + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + } + }, + "required": [ + "administratorLogin", + "administratorLoginPassword" + ], + "description": "The properties used to create a new server." + }, + "ServerPropertiesForRestore": { + "x-ms-discriminator-value": "PointInTimeRestore", + "allOf": [ + { + "$ref": "#/definitions/ServerPropertiesForCreate" + } + ], + "properties": { + "sourceServerId": { + "type": "string", + "description": "The source server id to restore from." + }, + "restorePointInTime": { + "type": "string", + "format": "date-time", + "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." + } + }, + "required": [ + "sourceServerId", + "restorePointInTime" + ], + "description": "The properties to a new server by restoring from a backup." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8." + }, + "tier": { + "type": "string", + "description": "The tier of the particular SKU, e.g. Basic.", + "enum": [ + "Basic", + "GeneralPurpose", + "MemoryOptimized" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "The scale up/out capacity, representing server's compute units." + }, + "size": { + "type": "string", + "description": "The size code, to be interpreted by resource as appropriate." + }, + "family": { + "type": "string", + "description": "The family of hardware." + } + }, + "description": "Billing information related properties of a server." + }, + "Server": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "$ref": "#/definitions/ServerProperties", + "x-ms-client-flatten": true, + "description": "Properties of the server." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "Represents a server." + }, + "ServerForCreate": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "$ref": "#/definitions/ServerPropertiesForCreate", + "x-ms-client-flatten": false, + "description": "Properties of the server." + }, + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "required": [ + "properties", + "location" + ], + "description": "Represents a server to be created." + }, + "ServerUpdateParameters": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU (pricing tier) of the server." + }, + "properties": { + "properties": { + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile of a server." + }, + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + }, + "version": { + "$ref": "#/definitions/ServerVersion", + "description": "The version of a server." + }, + "sslEnforcement": { + "$ref": "#/definitions/SslEnforcement", + "description": "Enable ssl enforcement or not when connect to server." + } + }, + "x-ms-client-flatten": true, + "description": "The properties that can be updated for a server." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + }, + "description": "Parameters allowd to update for a server." + }, + "ServerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Server" + }, + "description": "The list of servers" + } + }, + "description": "A list of servers." + }, + "FirewallRuleProperties": { + "properties": { + "startIpAddress": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "description": "The start IP address of the server firewall rule. Must be IPv4 format." + }, + "endIpAddress": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "description": "The end IP address of the server firewall rule. Must be IPv4 format." + } + }, + "required": [ + "startIpAddress", + "endIpAddress" + ], + "description": "The properties of a server firewall rule." + }, + "FirewallRule": { + "properties": { + "properties": { + "$ref": "#/definitions/FirewallRuleProperties", + "x-ms-client-flatten": true, + "description": "The properties of a firewall rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "required": [ + "properties" + ], + "description": "Represents a server firewall rule." + }, + "FirewallRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The list of firewall rules in a server." + } + }, + "description": "A list of firewall rules." + }, + "DatabaseProperties": { + "properties": { + "charset": { + "type": "string", + "description": "The charset of the database." + }, + "collation": { + "type": "string", + "description": "The collation of the database." + } + }, + "description": "The properties of a database." + }, + "Database": { + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "x-ms-client-flatten": true, + "description": "The properties of a database." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Represents a Database." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of databases housed in a server" + } + }, + "description": "A List of databases." + }, + "ConfigurationProperties": { + "properties": { + "value": { + "type": "string", + "description": "Value of the configuration." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Description of the configuration." + }, + "defaultValue": { + "type": "string", + "readOnly": true, + "description": "Default value of the configuration." + }, + "dataType": { + "type": "string", + "readOnly": true, + "description": "Data type of the configuration." + }, + "allowedValues": { + "type": "string", + "readOnly": true, + "description": "Allowed values of the configuration." + }, + "source": { + "type": "string", + "description": "Source of the configuration." + } + }, + "description": "The properties of a configuration." + }, + "Configuration": { + "properties": { + "properties": { + "$ref": "#/definitions/ConfigurationProperties", + "x-ms-client-flatten": true, + "description": "The properties of a configuration." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Represents a Configuration." + }, + "ConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Configuration" + }, + "description": "The list of server configurations." + } + }, + "description": "A list of server configurations." + }, + "OperationDisplay": { + "properties": { + "provider": { + "type": "string", + "readOnly": true, + "description": "Operation resource provider name." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "Resource on which the operation is performed." + }, + "operation": { + "type": "string", + "readOnly": true, + "description": "Localized friendly name for the operation." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Operation description." + } + }, + "description": "Display metadata associated with the operation." + }, + "Operation": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the operation being performed on this particular object." + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "readOnly": true, + "description": "The localized display information for this particular operation or action." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The intended executor of the operation.", + "enum": [ + "NotSpecified", + "user", + "system" + ], + "x-ms-enum": { + "name": "OperationOrigin", + "modelAsString": true + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true, + "x-ms-client-flatten": false, + "description": "Additional descriptions for the operation." + } + }, + "description": "REST API operation definition." + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "The list of resource provider operations." + } + }, + "description": "A list of resource provider operations." + }, + "LogFileProperties": { + "properties": { + "name": { + "type": "string", + "description": "Log file name." + }, + "sizeInKB": { + "type": "integer", + "format": "int64", + "description": "Size of the log file." + }, + "createdTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Creation timestamp of the log file." + }, + "lastModifiedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Last modified timestamp of the log file." + }, + "type": { + "type": "string", + "description": "Type of the log file." + }, + "url": { + "type": "string", + "description": "The url to download the log file from." + } + }, + "description": "The properties of a log file." + }, + "LogFile": { + "properties": { + "name": { + "type": "string", + "description": "The name of the log file." + }, + "properties": { + "$ref": "#/definitions/LogFileProperties", + "x-ms-client-flatten": true, + "description": "The properties of the log file." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Represents a log file." + }, + "LogFileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LogFile" + }, + "description": "The list of log files." + } + }, + "description": "A list of log files." + }, + "PerformanceTierServiceLevelObjectives": { + "properties": { + "id": { + "type": "string", + "description": "ID for the service level objective." + }, + "edition": { + "type": "string", + "description": "Edition of the performance tier." + }, + "vCore": { + "type": "integer", + "description": "vCore associated with the service level objective" + }, + "hardwareGeneration": { + "type": "string", + "description": "Hardware generation associated with the service level objective" + } + }, + "description": "Service level objectives for performance tier." + }, + "PerformanceTierProperties": { + "properties": { + "id": { + "type": "string", + "description": "ID of the performance tier." + }, + "maxBackupRetentionDays": { + "type": "integer", + "description": "Maximum Backup retention in days for the performance tier edition" + }, + "minBackupRetentionDays": { + "type": "integer", + "description": "Minimum Backup retention in days for the performance tier edition" + }, + "maxStorageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + }, + "minStorageMB": { + "type": "integer", + "format": "int32", + "description": "Max storage allowed for a server." + }, + "serviceLevelObjectives": { + "type": "array", + "items": { + "$ref": "#/definitions/PerformanceTierServiceLevelObjectives" + }, + "description": "Service level objectives associated with the performance tier" + } + }, + "description": "Performance tier properties" + }, + "PerformanceTierListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PerformanceTierProperties" + }, + "description": "The list of performance tiers" + } + }, + "description": "A list of performance tiers." + }, + "NameAvailabilityRequest": { + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Resource name to verify." + }, + "type": { + "type": "string", + "description": "Resource type used for verification." + } + }, + "description": "Request from client to check resource name availability." + }, + "NameAvailability": { + "properties": { + "message": { + "type": "string", + "description": "Error Message." + }, + "nameAvailable": { + "type": "boolean", + "description": "Indicates whether the resource name is available." + }, + "reason": { + "type": "string", + "description": "Reason for name being unavailable." + } + }, + "description": "Represents a resource name availability." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription ID that identifies an Azure subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the request." + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + }, + "FirewallRuleNameParameter": { + "name": "firewallRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server firewall rule.", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database.", + "x-ms-parameter-location": "method" + }, + "ConfigurationNameParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server configuration.", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index e782b146b7b0..2cd475090356 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the Sql API. ``` yaml openapi-type: arm -tag: package-2017-04-preview +tag: package-2017-12-01-preview ``` @@ -40,6 +40,17 @@ input-file: ``` +### Tag: package-2017-12-01-preview + +These settings apply only when `--tag=package-2017-12-01-preview` is specified on the command line. + + +``` yaml $(tag) == 'package-2017-12-01-preview' +input-file: +- Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json +``` + + --- # Code Generation @@ -69,14 +80,14 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: azure.mgmt.rdbms.postgres + namespace: azure.mgmt.rdbms.postgresql package-name: azure-mgmt-rdbms clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt-rdbms/azure/mgmt/rdbms/postgres + output-folder: $(python-sdks-folder)/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql ``` ``` yaml $(python) && $(python-mode) == 'create' python: @@ -112,6 +123,14 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-12-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/postgresql/mgmt/2017-12-01-preview/postgresql +``` ## Java diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2016-08-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2016-08-10/service.json index e012049d0bf5..1f7ae4ebf3e2 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2016-08-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2016-08-10/service.json @@ -14122,14 +14122,16 @@ "in": "path", "description": "The name of the resource group where the recovery services vault is present.", "required": true, - "type": "string" + "type": "string", + "x-ms-parameter-location": "client" }, "ResourceName": { "name": "resourceName", "in": "path", "description": "The name of the recovery services vault.", "required": true, - "type": "string" + "type": "string", + "x-ms-parameter-location": "client" }, "ApiVersion": { "name": "api-version", 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 74b110ed3d45..f4c2ba1c2ee5 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 @@ -14576,14 +14576,16 @@ "in": "path", "description": "The name of the resource group where the recovery services vault is present.", "required": true, - "type": "string" + "type": "string", + "x-ms-parameter-location": "client" }, "ResourceName": { "name": "resourceName", "in": "path", "description": "The name of the recovery services vault.", "required": true, - "type": "string" + "type": "string", + "x-ms-parameter-location": "client" }, "ApiVersion": { "name": "api-version", diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCacheCheckNameAvailability.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCacheCheckNameAvailability.json new file mode 100644 index 000000000000..78c3490ce9b5 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCacheCheckNameAvailability.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2017-10-01", + "subscriptionId": "subid", + "parameters": { + "type": "Microsoft.Cache/Redis", + "name": "cacheName" + } + }, + "responses": { + "200": {} + } +} \ No newline at end of file diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCacheListUpgradeNotifications.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCacheListUpgradeNotifications.json new file mode 100644 index 000000000000..11cbb8c097b1 --- /dev/null +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCacheListUpgradeNotifications.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "name": "cache1", + "resourceGroupName": "rg1", + "api-version": "2017-10-01", + "subscriptionId": "subid", + "history": "5000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "notification1", + "timestamp": "2017-02-16T23:20:50.52Z", + "upsellNotification": {} + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json index eacd1c28d3ca..5b6b860e896b 100644 --- a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesCreateOrUpdate.json @@ -2,6 +2,7 @@ "parameters": { "name": "cache1", "resourceGroupName": "rg1", + "default": "default", "api-version": "2017-10-01", "subscriptionId": "subid", "parameters": { diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesDelete.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesDelete.json index 057f99692150..5f83be131ed2 100644 --- a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesDelete.json +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesDelete.json @@ -2,6 +2,7 @@ "parameters": { "name": "cache1", "resourceGroupName": "rg1", + "default": "default", "api-version": "2017-10-01", "subscriptionId": "subid" }, diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesGet.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesGet.json index c3566277a667..cd5f5776ab5a 100644 --- a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesGet.json +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/examples/RedisCachePatchSchedulesGet.json @@ -2,6 +2,7 @@ "parameters": { "name": "cache1", "resourceGroupName": "rg1", + "default": "default", "api-version": "2017-10-01", "subscriptionId": "subid" }, diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/redis.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/redis.json index b77d85a16632..361a2dc629d7 100644 --- a/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/redis.json +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2017-10-01/redis.json @@ -59,6 +59,90 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/CheckNameAvailability": { + "post": { + "tags": [ + "Redis" + ], + "operationId": "Redis_CheckNameAvailability", + "x-ms-examples": { + "RedisCacheList": { "$ref": "./examples/RedisCacheCheckNameAvailability.json" } + }, + "description": "Checks that the redis cache name is valid and is not already in use.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + }, + "description": "Parameters supplied to the CheckNameAvailability Redis operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Name is available" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/listUpgradeNotifications": { + "get": { + "tags": [ + "Redis" + ], + "operationId": "Redis_ListUpgradeNotifications", + "x-ms-examples": { + "RedisCacheGet": { "$ref": "./examples/RedisCacheListUpgradeNotifications.json" } + }, + "description": "Gets any upgrade notifications for a Redis cache.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Redis cache." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "history", + "in": "query", + "required": true, + "type": "number", + "format": "double", + "description": "how many minutes in past to look for upgrade notifications" + } + ], + "responses": { + "200": { + "description": "All upgrade notifications in given time range", + "schema": { + "$ref": "#/definitions/NotificationListResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}": { "put": { "tags": [ @@ -247,7 +331,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis": { "get": { "tags": [ "Redis" @@ -285,7 +369,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/Redis/": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/Redis": { "get": { "tags": [ "Redis" @@ -777,7 +861,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/patchSchedules/default": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/patchSchedules/{default}": { "put": { "tags": [ "Redis" @@ -802,6 +886,20 @@ "type": "string", "description": "The name of the Redis cache." }, + { + "name": "default", + "in": "path", + "required": true, + "type": "string", + "description": "Default string modeled as parameter for auto generation to work correctly.", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "defaultName", + "modelAsString": true + } + }, { "name": "parameters", "in": "body", @@ -857,6 +955,20 @@ "type": "string", "description": "The name of the redis cache." }, + { + "name": "default", + "in": "path", + "required": true, + "type": "string", + "description": "Default string modeled as parameter for auto generation to work correctly.", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "defaultName", + "modelAsString": true + } + }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -897,6 +1009,20 @@ "type": "string", "description": "The name of the redis cache." }, + { + "name": "default", + "in": "path", + "required": true, + "type": "string", + "description": "Default string modeled as parameter for auto generation to work correctly.", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "defaultName", + "modelAsString": true + } + }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1832,6 +1958,60 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "CheckNameAvailabilityParameters": { + "description": "Parameters body to pass for name availability check.", + "properties": { + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "description": "Resource type." + } + } + }, + "UpgradeNotification": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of upgrade notification." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Timestamp when upgrade notification occured." + }, + "upsellNotification": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Details about this upgrade notification" + } + }, + "description": "Properties of upgrade notification." + }, + "NotificationListResponse": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UpgradeNotification" + }, + "description": "List of all notifications." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link for next set of notifications." + } + }, + "description": "The response of listUpgradeNotifications." } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json new file mode 100644 index 000000000000..f6bbdc7f3c62 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "deploymentName": "{deploymentName}", + "api-version": "2018-02-01", + "parameters": { + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourcegroups/myResourceGroup/providers/Microsoft.Resources/deployments/{deploymentName}", + "name": "{deploymentName}", + "properties": { + "provisioningState": "Accepted", + "correlationId": "{correlationId}", + "timeStamp": "{timeStamp}", + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json new file mode 100644 index 000000000000..ed23794a04d1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "deploymentName": "{deploymentName}", + "api-version": "2018-02-01", + "parameters": { + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "{nameOfDeploymentToUse}" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourcegroups/myResourceGroup/providers/Microsoft.Resources/deployments/{deploymentName}", + "name": "{deploymentName}", + "properties": { + "provisioningState": "Accepted", + "correlationId": "{correlationId}", + "timeStamp": "{timeStamp}", + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "{nameOfDeploymentToUse}" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json new file mode 100644 index 000000000000..b0ac22a79ef1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json @@ -0,0 +1,2958 @@ +{ + "swagger": "2.0", + "info": { + "title": "ResourceManagementClient", + "version": "2018-02-01", + "description": "Provides operations for working with resources and resource groups." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { + "tags": [ + "Providers" + ], + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns informatin about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { + "tags": [ + "Providers" + ], + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", + "parameters": [ + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceGroup" + }, + "description": "Parameters supplied to the create or update a resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "200": { + "description": "OK - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + } + } + }, + "delete": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "OK" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + } + } + }, + "patch": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceGroupPatchable" + }, + "description": "Parameters supplied to update a resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { + "post": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to export as a template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the result of the export.", + "schema": { + "$ref": "#/definitions/ResourceGroupExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", + "parameters": [ + { + "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", + "description": "The number of results to return. If null is passed, returns all resource groups." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource groups.", + "schema": { + "$ref": "#/definitions/ResourceGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ResourceGroupFilter" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { + "tags": [ + "Resources" + ], + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", + "parameters": [ + { + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { + "tags": [ + "Resources" + ], + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", + "parameters": [ + { + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "409": { + "description": "Conflict" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { + "tags": [ + "Resources" + ], + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resource groups." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources.", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "delete": { + "tags": [ + "Resources" + ], + "operationId": "Resources_Delete", + "description": "Deletes a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Resources" + ], + "operationId": "Resources_Update", + "description": "Updates a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Resources" + ], + "operationId": "Resources_Get", + "description": "Gets a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + } + } + } + }, + "/{resourceId}": { + "head": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "delete": { + "tags": [ + "Resources" + ], + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Resources" + ], + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Resources" + ], + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Created - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag to create." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "GenericResourceFilter": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "tagname": { + "type": "string", + "description": "The tag name." + }, + "tagvalue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource filter." + }, + "ResourceGroupFilter": { + "properties": { + "tagName": { + "type": "string", + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource group filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment paramaters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + } + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deploymentoutput." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "type": "string", + "description": "The name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "required": [ + "name" + ], + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "ProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "An array of resource providers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource providers." + }, + "GenericResource": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "The plan of the resource." + }, + "properties": { + "type": "object", + "description": "The resource properties." + }, + "kind": { + "type": "string", + "description": "The kind of the resource.", + "pattern": "^[-\\w\\._,\\(\\)]+$" + }, + "managedBy": { + "type": "string", + "description": "ID of the resource that manages this resource." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the resource." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Resource information." + }, + "Plan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "The offer ID." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + }, + "version": { + "type": "string", + "description": "The plan's version." + } + }, + "description": "Plan for the resource." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The SKU name." + }, + "tier": { + "type": "string", + "description": "The SKU tier." + }, + "size": { + "type": "string", + "description": "The SKU size." + }, + "family": { + "type": "string", + "description": "The SKU family." + }, + "model": { + "type": "string", + "description": "The SKU model." + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "The SKU capacity." + } + }, + "description": "SKU for the resource." + }, + "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 + } + } + }, + "description": "Identity for the resource." + }, + "ResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GenericResource" + }, + "description": "An array of resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource groups." + }, + "ResourceGroup": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the resource group." + }, + "name": { + "type": "string", + "description": "The name of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties" + }, + "location": { + "type": "string", + "description": "The location of the resource group. It cannot be changed after the resource group has been created. It must be one of the supported Azure locations." + }, + "managedBy": { + "type": "string", + "description": "The ID of the resource that manages this resource group." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the resource group." + } + }, + "required": [ + "location" + ], + "description": "Resource group information." + }, + "ResourceGroupPatchable": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties" + }, + "managedBy": { + "type": "string", + "description": "The ID of the resource that manages this resource group." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the resource group." + } + }, + "description": "Resource group information." + }, + "ResourceGroupProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state. " + } + }, + "description": "The resource group properties." + }, + "ResourceGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceGroup" + }, + "description": "An array of resource groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource groups." + }, + "ResourcesMoveInfo": { + "properties": { + "resources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IDs of the resources." + }, + "targetResourceGroup": { + "type": "string", + "description": "The target resource group." + } + }, + "description": "Parameters of move resources." + }, + "ExportTemplateRequest": { + "properties": { + "resources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IDs of the resources. The only supported string currently is '*' (all resources). Future updates will support exporting specific resources." + }, + "options": { + "type": "string", + "description": "The export template options. Supported values include 'IncludeParameterDefaultValue', 'IncludeComments' or 'IncludeParameterDefaultValue, IncludeComments" + } + }, + "description": "Export resource group template request parameters." + }, + "TagCount": { + "properties": { + "type": { + "type": "string", + "description": "Type of count." + }, + "value": { + "type": "integer", + "description": "Value of count." + } + }, + "description": "Tag count." + }, + "TagValue": { + "properties": { + "id": { + "type": "string", + "description": "The tag ID." + }, + "tagValue": { + "type": "string", + "description": "The tag value." + }, + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." + } + }, + "description": "Tag information." + }, + "TagDetails": { + "properties": { + "id": { + "type": "string", + "description": "The tag ID." + }, + "tagName": { + "type": "string", + "description": "The tag name." + }, + "count": { + "$ref": "#/definitions/TagCount", + "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/TagValue" + }, + "description": "The list of tag values." + } + }, + "description": "Tag details." + }, + "TagsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagDetails" + }, + "description": "An array of tags." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of subscription tags." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "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" + } + }, + "x-ms-azure-resource": true, + "description": "Resource." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "ResourceGroupExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + }, + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "The error." + } + }, + "description": "Resource group export result." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 8d342000696b..4e6052c0e549 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -41,7 +41,7 @@ tag: package-policy-2017-06 ``` ``` yaml $(package-resources) -tag: package-resources-2017-05 +tag: package-resources-2018-02 ``` ``` yaml $(package-subscriptions) @@ -123,6 +123,14 @@ input-file: - Microsoft.Authorization/preview/2015-10-01-preview/policy.json ``` +### Tag: package-resources-2018-02 +These settings apply only when `--tag=package-resources-2018-02` is specified on the command line. + +``` yaml $(tag) == 'package-resources-2018-02' +input-file: +- Microsoft.Resources/stable/2018-02-01/resources.json +``` + ### Tag: package-resources-2017-05 These settings apply only when `--tag=package-resources-2017-05` is specified on the command line. @@ -271,6 +279,7 @@ batch: - tag: package-policy-2016-12 - tag: package-policy-2016-04 - tag: package-policy-2015-10 + - tag: package-resources-2018-02 - tag: package-resources-2017-05 - tag: package-resources-2016-09 - tag: package-resources-2016-07 @@ -352,6 +361,16 @@ namespace: policy output-folder: $(go-sdk-folder)/services/resources/mgmt/2015-10-01-preview/policy ``` +### Tag: package-resources-2018-02 and go + +These settings apply only when `--tag=package-resources-2018-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-resources-2018-02' && $(go) +namespace: resources +output-folder: $(go-sdk-folder)/services/resources/mgmt/2018-02-01/resources +``` + ### Tag: package-resources-2017-05 and go These settings apply only when `--tag=package-resources-2017-05 --go` is specified on the command line. @@ -473,6 +492,7 @@ batch: - tag: package-policy-2016-12 - tag: package-policy-2016-04 - tag: package-policy-2015-10 + - tag: package-resources-2018-02 - tag: package-resources-2017-05 - tag: package-resources-2016-09 - tag: package-resources-2016-02 @@ -578,6 +598,17 @@ python: output-folder: $(python-sdks-folder)/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview ``` +### Tag: package-resources-2018-02 and 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) +python: + namespace: azure.mgmt.resource.resources.v2018_02_01 + output-folder: $(python-sdks-folder)/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_02_01 +``` + ### Tag: package-resources-2017-05 and python These settings apply only when `--tag=package-resources-2017-05 --python` is specified on the command line. @@ -631,8 +662,75 @@ Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-features-2015-12' && $(java) +java: + namespace: com.microsoft.azure.management.resources + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resources +``` + +### Tag: package-locks-2016-09 and java + +These settings apply only when `--tag=package-locks-2016-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-locks-2016-09' && $(java) +java: + payload-flattening-threshold: 1 + namespace: com.microsoft.azure.management.locks + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-locks +``` + +### Tag: package-policy-2016-04 and java + +These settings apply only when `--tag=package-policy-2016-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2016-04' && $(java) +java: + namespace: com.microsoft.azure.management.resources + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resources +``` + +### Tag: package-resources-2016-09 and java + +These settings apply only when `--tag=package-resources-2016-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2016-09' && $(java) +java: + namespace: com.microsoft.azure.management.resources + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resources +``` + +### Tag: package-subscriptions-2016-06 and java + +These settings apply only when `--tag=package-subscriptions-2016-06--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2016-06' && $(java) +java: + namespace: com.microsoft.azure.management.resources output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resources ``` diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2015-02-28-preview/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2015-02-28-preview/searchindex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2015-02-28-preview/searchindex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2015-02-28-preview/searchindex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2015-02-28/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2015-02-28/searchindex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2015-02-28/searchindex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2015-02-28/searchindex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01-preview/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01-preview/examples/SearchIndexCountDocuments.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01-preview/examples/SearchIndexCountDocuments.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01-preview/examples/SearchIndexCountDocuments.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01-preview/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01-preview/searchindex.json similarity index 98% rename from specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01-preview/searchindex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01-preview/searchindex.json index 32cfa4ac61f2..f5e58115e4d7 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01-preview/searchindex.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01-preview/searchindex.json @@ -314,7 +314,8 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": true, - "description": "The name of the Azure Search service." + "description": "The name of the Azure Search service.", + "x-ms-parameter-location": "client" }, "SearchDnsSuffixParameter": { "name": "searchDnsSuffix", @@ -323,7 +324,8 @@ "type": "string", "default": "search.windows.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the Azure Search service. The default is search.windows.net." + "description": "The DNS suffix of the Azure Search service. The default is search.windows.net.", + "x-ms-parameter-location": "client" }, "IndexNameParameter": { "name": "indexName", @@ -331,7 +333,8 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": false, - "description": "The name of the Azure Search index." + "description": "The name of the Azure Search index.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01/searchindex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Index/preview/2016-09-01/searchindex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2016-09-01/searchindex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Index/readme.md b/specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md similarity index 98% rename from specification/search/data-plane/Microsoft.Azure.Search.Index/readme.md rename to specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md index 5bbb2d36beda..770c998c0f52 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Index/readme.md +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md @@ -82,5 +82,5 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION namespace: Microsoft.Azure.Search clear-output-folder: true - output-folder: $(csharp-sdks-folder)/Search/DataPlane/Microsoft.Azure.Search/GeneratedSearchIndex + output-folder: $(csharp-sdks-folder)/Search/DataPlane/Microsoft.Azure.Search.Data/Generated ``` diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2016-09-01-preview/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2016-09-01-preview/searchservice.json index 38615954a0d3..9738b0ba1bfc 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2016-09-01-preview/searchservice.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2016-09-01-preview/searchservice.json @@ -4013,7 +4013,8 @@ "required": true, "type": "string", "x-ms-skip-url-encoding": true, - "description": "The name of the Azure Search service." + "description": "The name of the Azure Search service.", + "x-ms-parameter-location": "client" }, "SearchDnsSuffixParameter": { "name": "searchDnsSuffix", @@ -4022,7 +4023,8 @@ "type": "string", "default": "search.windows.net", "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the Azure Search service. The default is search.windows.net." + "description": "The DNS suffix of the Azure Search service. The default is search.windows.net.", + "x-ms-parameter-location": "client" } } } \ No newline at end of file diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md b/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md index 18292cc841ae..1857949fe668 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md @@ -82,5 +82,5 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION namespace: Microsoft.Azure.Search clear-output-folder: true - output-folder: $(csharp-sdks-folder)/Search/DataPlane/Microsoft.Azure.Search/GeneratedSearchService + output-folder: $(csharp-sdks-folder)/Search/DataPlane/Microsoft.Azure.Search.Service/Generated ``` diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json index f424d9375187..6db2871c8cea 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json @@ -3112,6 +3112,10 @@ "$ref": "#/definitions/EntityStatus", "description": "Enumerates the possible values for the status of a messaging entity." }, + "enableBatchedOperations": { + "type": "boolean", + "description": "Value that indicates whether server-side batched operations are enabled." + }, "autoDeleteOnIdle": { "format": "duration", "type": "string", diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/1.0.0/servicefabric.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/1.0.0/servicefabric.json index 4bb6a9d95423..93a0b8d76937 100644 --- a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/1.0.0/servicefabric.json +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/1.0.0/servicefabric.json @@ -6558,7 +6558,8 @@ "in": "query", "description": "The timeout in seconds", "type": "integer", - "required": false + "required": false, + "x-ms-parameter-location": "client" } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json index 5c60d73a701d..34aaf23d5bf2 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json @@ -17,51 +17,51 @@ ], "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/operations/{operationId}/cancel": { - "post": { - "tags": [ - "Databases" - ], - "description": "Cancels the asynchronous operation on the database.", - "operationId": "DatabaseOperations_Cancel", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "operationId", - "in": "path", - "description": "The operation identifier.", - "required": true, - "type": "string", - "format": "uuid" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "The request for cancel has been executed successfully." - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompetible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 CannotCancelDatabaseOperation - The database management operation is in a state that cannot be cancelled.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." - } - }, - "x-ms-examples": { - "Cancel the database management operation": { - "$ref": "./examples/CancelDatabaseOperation.json" - } - } + "post": { + "tags": [ + "Databases" + ], + "description": "Cancels the asynchronous operation on the database.", + "operationId": "DatabaseOperations_Cancel", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "The operation identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for cancel has been executed successfully." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompetible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currrently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Cancel the database management operation": { + "$ref": "./examples/CancelDatabaseOperation.json" + } } + } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/operations": { "get": { @@ -95,7 +95,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompetible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompetible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currrently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-pageable": { @@ -203,30 +203,24 @@ "description": "Whether or not the error is a user error.", "type": "boolean", "readOnly": true - } - } - }, - "Resource": { - "description": "ARM resource.", - "type": "object", - "properties": { - "id": { - "description": "Resource ID.", + }, + "estimatedCompletionTime": { + "format": "date-time", + "description": "The estimated completion time of the operation.", "type": "string", "readOnly": true }, - "name": { - "description": "Resource name.", + "description": { + "description": "The operation description.", "type": "string", "readOnly": true }, - "type": { - "description": "Resource type.", - "type": "string", + "isCancellable": { + "description": "Whether the operation can be cancelled.", + "type": "boolean", "readOnly": true } - }, - "x-ms-azure-resource": true + } }, "ProxyResource": { "description": "ARM proxy resource.", @@ -253,6 +247,28 @@ "x-ms-client-flatten": true } } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true } }, "parameters": { @@ -288,6 +304,14 @@ "type": "string", "x-ms-parameter-location": "method" }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, "DatabaseNameParameter": { "name": "databaseName", "in": "path", @@ -295,6 +319,41 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json new file mode 100644 index 000000000000..2f5edfd5272f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json @@ -0,0 +1,234 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-03-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/dataWarehouseUserActivities/{dataWarehouseUserActivityName}": { + "get": { + "tags": [ + "DataWarehouseUserActivities" + ], + "description": "Gets the user activities of a data warehouse which includes running and suspended queries", + "operationId": "DataWarehouseUserActivities_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "dataWarehouseUserActivityName", + "in": "path", + "description": "The activity name of the data warehouse. ", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "DataWarehouseUserActivityName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get the data warehouse user activities.", + "schema": { + "$ref": "#/definitions/DataWarehouseUserActivities" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The specified resource was not found." + } + }, + "x-ms-examples": { + "Get the list of the user activities of a data warehouse": { + "$ref": "./examples/GetDataWarehouseUserActivities.json" + } + } + } + } + }, + "definitions": { + "DataWarehouseUserActivitiesProperties": { + "description": "User activities of a data warehouse. This currently includes the count of running or suspended queries. For more information, please view the sys.dm_pdw_exec_requests dynamic management view (DMV).", + "type": "object", + "properties": { + "activeQueriesCount": { + "format": "int32", + "description": "Count of running and suspended queries.", + "type": "integer", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "DataWarehouseUserActivities": { + "description": "User activities of a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataWarehouseUserActivitiesProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseRestorePointsDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseRestorePointsDelete.json new file mode 100644 index 000000000000..27113d2984f2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseRestorePointsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "restorePointName": "131546477590000000", + "location": "japaneast", + "serverName": "testserver", + "databaseName": "testDatabase", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetDataWarehouseUserActivities.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetDataWarehouseUserActivities.json new file mode 100644 index 000000000000..a0f45d02041c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetDataWarehouseUserActivities.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-03-01-preview", + "dataWarehouseUserActivityName": "current" + }, + "responses": { + "200": { + "body": { + "properties":{ + "activeQueriesCount":0 + }, + "id":"subscriptions/326affc3-21f4-4471-a545-e37430b70113/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Sql/servers/testsvr/databases/dwdb01/dataWarehouseUserActivities/current", + "name":"current", + "type":"Microsoft.Sql/servers/databases/dataWarehouseUserActivities" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ListDatabaseOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ListDatabaseOperations.json index 2c45c44bb9da..aa63a9bef18a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ListDatabaseOperations.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ListDatabaseOperations.json @@ -21,7 +21,10 @@ "percentComplete": 100, "serverName": "sqlcrudtest-4645", "startTime": "2017-06-01T09:10:08.10Z", - "state": "Succeeded" + "state": "Succeeded", + "estimatedCompletionTime": "2017-06-01T13:10:10Z", + "description": "UpdateLogicalDatabase on 'testdb', target ServiceLevelObjective S3", + "isCancellable": false } }, { @@ -35,7 +38,10 @@ "percentComplete": 19, "serverName": "sqlcrudtest-4645", "startTime": "2017-06-01T10:10:08.10Z", - "state": "InProgress" + "state": "InProgress", + "estimatedCompletionTime": "2017-06-01T13:10:10Z", + "description": "UpdateLogicalDatabase on 'testdb', target ServiceLevelObjective S3", + "isCancellable": true } } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..2f8c565ce8b9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupGet.json new file mode 100644 index 000000000000..2a33e742f05c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2017-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase/longTermRetentionBackups/2017-03-10T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2017-09-06T08:00:00.000Z", + "name": "2017-03-10T08:00:00.000Z;55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties" : { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..ef67ab2efa19 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByDatabase.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "longTermRetentionDatabaseName": "testDatabase", + "api-version": "2017-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131657960820000000", + "name": "55555555-6666-7777-8888-999999999999;131657960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131677960820000000", + "name": "55555555-6666-7777-8888-999999999999;131677960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2017-09-07T08:00:00.000Z", + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..391ece01551d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByLocation.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "api-version": "2017-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver1/longTermRetentionDatabases/testDatabase1/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;2017-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver1", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver2/longTermRetentionDatabases/testDatabase2/longTermRetentionBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;2017-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver2", + "serverCreateTime": "2017-04-10T08:00:00.000Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver3/longTermRetentionDatabases/testDatabase3/longTermRetentionBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;2017-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver3", + "serverCreateTime": "2017-05-10T08:00:00.000Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByServer.json new file mode 100644 index 000000000000..45a66c5412dd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionBackupListByServer.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "longTermRetentionServerName": "testserver", + "api-version": "2017-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase1/longTermRetentionBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase2/longTermRetentionBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;131657960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionServers/testserver/longTermRetentionDatabases/testDatabase3/longTermRetentionBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;131667960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionServers/longTermRetentionDatabases/longTermRetentionBackups", + "properties": { + "serverName": "testserver", + "serverCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionPolicyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..dea59f79b96b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionPolicyCreateOrUpdate.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "serverName": "testserver", + "databaseName": "testDatabase", + "policyName" : "default", + "api-version": "2017-03-01", + "parameters" : { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/resourceGroup/servers/testserver/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/servers/databases/backupLongTermRetentionPolicies", + "properties" : { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionPolicyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionPolicyGet.json new file mode 100644 index 000000000000..97517d41a31a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/LongTermRetentionPolicyGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "serverName": "testserver", + "databaseName": "testDatabase", + "policyName" : "default", + "api-version": "2017-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/resourceGroup/servers/testserver/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/servers/databases/backupLongTermRetentionPolicies", + "properties" : { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json new file mode 100644 index 000000000000..b84d5b17257b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json @@ -0,0 +1,762 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-03-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionDatabases/{longTermRetentionDatabaseName}/longTermRetentionBackups/{backupName}": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Gets a long term retention backup.", + "operationId": "LongTermRetentionBackups_Get", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention backup.": { + "$ref": "./examples/LongTermRetentionBackupGet.json" + } + } + }, + "delete": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Deletes a long term retention backup.", + "operationId": "LongTermRetentionBackups_Delete", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the long term retention backup.": { + "$ref": "./examples/LongTermRetentionBackupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionDatabases/{longTermRetentionDatabaseName}/longTermRetentionBackups": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Lists all long term retention backups for a database.", + "operationId": "LongTermRetentionBackups_ListByDatabase", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionDatabaseName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the database.": { + "$ref": "./examples/LongTermRetentionBackupListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionBackups": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Lists the long term retention backups for a given location.", + "operationId": "LongTermRetentionBackups_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the location.": { + "$ref": "./examples/LongTermRetentionBackupListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionServers/{longTermRetentionServerName}/longTermRetentionBackups": { + "get": { + "tags": [ + "LongTermRetentionBackups" + ], + "description": "Lists the long term retention backups for a given server.", + "operationId": "LongTermRetentionBackups_ListByServer", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "longTermRetentionServerName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/LongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the server.": { + "$ref": "./examples/LongTermRetentionBackupListByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/backupLongTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "BackupLongTermRetentionPolicies" + ], + "description": "Gets a database's long term retention policy.", + "operationId": "BackupLongTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be Default.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "LongTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get the policy.", + "schema": { + "$ref": "#/definitions/BackupLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention policy for the database.": { + "$ref": "./examples/LongTermRetentionPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "BackupLongTermRetentionPolicies" + ], + "description": "Sets a database's long term retention policy.", + "operationId": "BackupLongTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be Default.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "LongTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The long term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupLongTermRetentionPolicy" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set the policy.", + "schema": { + "$ref": "#/definitions/BackupLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update the long term retention policy for the database.": { + "$ref": "./examples/LongTermRetentionPolicyCreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/backupLongTermRetentionPolicies": { + "get": { + "tags": [ + "BackupLongTermRetentionPolicies" + ], + "description": "Gets a database's long term retention policy.", + "operationId": "BackupLongTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully get the policy.", + "schema": { + "$ref": "#/definitions/BackupLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention policy for the database.": { + "$ref": "./examples/LongTermRetentionPolicyGet.json" + } + } + } + } + }, + "definitions": { + "LongTermRetentionBackupProperties": { + "description": "Properties of a long term retention backup", + "type": "object", + "properties": { + "serverName": { + "description": "The server name that the backup database belong to.", + "type": "string", + "readOnly": true + }, + "serverCreateTime": { + "format": "date-time", + "description": "The create time of the server.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "The name of the database the backup belong to", + "type": "string", + "readOnly": true + }, + "databaseDeletionTime": { + "format": "date-time", + "description": "The delete time of the database", + "type": "string", + "readOnly": true + }, + "backupTime": { + "format": "date-time", + "description": "The time the backup was taken", + "type": "string", + "readOnly": true + }, + "backupExpirationTime": { + "format": "date-time", + "description": "The time the long term retention backup will expire.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "LongTermRetentionBackup": { + "description": "A long term retention backup.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LongTermRetentionBackupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "LongTermRetentionBackupListResult": { + "description": "A list of long term retention bacukps.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/LongTermRetentionBackup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "LongTermRetentionPolicyProperties": { + "description": "Properties of a long term retention policy", + "type": "object", + "properties": { + "weeklyRetention": { + "description": "The weekly retention policy for an LTR backup in an ISO 8601 format.", + "type": "string" + }, + "monthlyRetention": { + "description": "The montly retention policy for an LTR backup in an ISO 8601 format.", + "type": "string" + }, + "yearlyRetention": { + "description": "The yearly retention policy for an LTR backup in an ISO 8601 format.", + "type": "string" + }, + "weekOfYear": { + "format": "int32", + "description": "The week of year to take the yearly backup in an ISO 8601 format.", + "type": "integer" + } + } + }, + "BackupLongTermRetentionPolicy": { + "description": "A long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LongTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json index fac207b47146..2be16b54a812 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json @@ -48,18 +48,18 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 RestorePointLimitReached - A restore point cannot be created because database would exceed the allowed quota of restore points.\n\n * 400 RestorePointAttemptToDeleteSystemBackup - Cannot delete system restore point.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 408 DatabaseRestorePointTimedOut - Create database restore point failed." } }, "x-ms-pageable": { "nextLinkName": null }, "x-ms-examples": { - "List database restore points.": { - "$ref": "./examples/DatabaseRestorePointsListByDatabase.json" - }, "List datawarehouse database restore points.": { "$ref": "./examples/DataWarehouseRestorePointsListByDatabase.json" + }, + "List database restore points.": { + "$ref": "./examples/DatabaseRestorePointsListByDatabase.json" } } }, @@ -103,7 +103,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 RestorePointLimitReached - A restore point cannot be created because database would exceed the allowed quota of restore points.\n\n * 400 RestorePointAttemptToDeleteSystemBackup - Cannot delete system restore point.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 408 DatabaseRestorePointTimedOut - Create database restore point failed." }, "202": { "description": "Accepted" @@ -162,7 +162,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 RestorePointLimitReached - A restore point cannot be created because database would exceed the allowed quota of restore points.\n\n * 400 RestorePointAttemptToDeleteSystemBackup - Cannot delete system restore point.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 408 DatabaseRestorePointTimedOut - Create database restore point failed." } }, "x-ms-examples": { @@ -173,6 +173,50 @@ "$ref": "./examples/DatabaseRestorePointsGet.json" } } + }, + "delete": { + "tags": [ + "RestorePoints" + ], + "description": "Deletes a restore point.", + "operationId": "RestorePoints_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "restorePointName", + "in": "path", + "description": "The name of the restore point.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the restore point." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 RestorePointLimitReached - A restore point cannot be created because database would exceed the allowed quota of restore points.\n\n * 400 RestorePointAttemptToDeleteSystemBackup - Cannot delete system restore point.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 408 DatabaseRestorePointTimedOut - Create database restore point failed." + } + }, + "x-ms-examples": { + "Deletes a restore point.": { + "$ref": "./examples/DatabaseRestorePointsDelete.json" + } + } } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json new file mode 100644 index 000000000000..8686c830239d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json @@ -0,0 +1,370 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-10-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/operations/{operationId}/cancel": { + "post": { + "tags": [ + "Databases" + ], + "description": "Cancels the asynchronous operation on the database.", + "operationId": "DatabaseOperations_Cancel", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "The operation identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for cancel has been executed successfully." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompetible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currrently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-examples": { + "Cancel the database management operation": { + "$ref": "./examples/CancelDatabaseOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/operations": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a list of operations performed on the database.", + "operationId": "DatabaseOperations_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for getting database operations has been executed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseOperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompetible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currrently in progress.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the database management operations": { + "$ref": "./examples/ListDatabaseOperations.json" + } + } + } + } + }, + "definitions": { + "DatabaseOperationListResult": { + "description": "The response to a list database operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseOperation": { + "description": "A database operation.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "DatabaseOperationProperties": { + "description": "The properties of a database operation.", + "type": "object", + "properties": { + "databaseName": { + "description": "The name of the database the operation is being performed on.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of operation.", + "type": "string", + "readOnly": true + }, + "operationFriendlyName": { + "description": "The friendly name of operation.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "The percentage of the operation completed.", + "type": "integer", + "readOnly": true + }, + "serverName": { + "description": "The name of the server.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The operation start time.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The operation state.", + "enum": [ + "Pending", + "InProgress", + "Succeeded", + "Failed", + "CancelInProgress", + "Cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ManagementOperationState", + "modelAsString": true + } + }, + "errorCode": { + "format": "int32", + "description": "The operation error code.", + "type": "integer", + "readOnly": true + }, + "errorDescription": { + "description": "The operation error description.", + "type": "string", + "readOnly": true + }, + "errorSeverity": { + "format": "int32", + "description": "The operation error severity.", + "type": "integer", + "readOnly": true + }, + "isUserError": { + "description": "Whether or not the error is a user error.", + "type": "boolean", + "readOnly": true + }, + "estimatedCompletionTime": { + "format": "date-time", + "description": "The estimated completion time of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The operation description.", + "type": "string", + "readOnly": true + }, + "isCancellable": { + "description": "Whether the operation can be cancelled.", + "type": "boolean", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json new file mode 100644 index 000000000000..0017374449ca --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-10-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/operations/{operationId}/cancel": { + "post": { + "tags": [ + "ElasticPools" + ], + "description": "Cancels the asynchronous operation on the elastic pool.", + "operationId": "ElasticPoolOperations_Cancel", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "The operation identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for cancel has been executed successfully." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + } + }, + "x-ms-examples": { + "Cancel the elastic pool management operation": { + "$ref": "./examples/CancelElasticPoolOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/operations": { + "get": { + "tags": [ + "ElasticPools" + ], + "description": "Gets a list of operations performed on the elastic pool.", + "operationId": "ElasticPoolOperations_ListByElasticPool", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for getting elastic pool operations has been executed successfully.", + "schema": { + "$ref": "#/definitions/ElasticPoolOperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the elastic pool management operations": { + "$ref": "./examples/ListElasticPoolOperations.json" + } + } + } + } + }, + "definitions": { + "ElasticPoolOperationListResult": { + "description": "The response to a list elastic pool operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPoolOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ElasticPoolOperationProperties": { + "description": "The properties of a elastic pool operation.", + "type": "object", + "properties": { + "elasticPoolName": { + "description": "The name of the elastic pool the operation is being performed on.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of operation.", + "type": "string", + "readOnly": true + }, + "operationFriendlyName": { + "description": "The friendly name of operation.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "The percentage of the operation completed.", + "type": "integer", + "readOnly": true + }, + "serverName": { + "description": "The name of the server.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The operation start time.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The operation state.", + "type": "string", + "readOnly": true + }, + "errorCode": { + "format": "int32", + "description": "The operation error code.", + "type": "integer", + "readOnly": true + }, + "errorDescription": { + "description": "The operation error description.", + "type": "string", + "readOnly": true + }, + "errorSeverity": { + "format": "int32", + "description": "The operation error severity.", + "type": "integer", + "readOnly": true + }, + "isUserError": { + "description": "Whether or not the error is a user error.", + "type": "boolean", + "readOnly": true + }, + "estimatedCompletionTime": { + "format": "date-time", + "description": "The estimated completion time of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The operation description.", + "type": "string", + "readOnly": true + }, + "isCancellable": { + "description": "Whether the operation can be cancelled.", + "type": "boolean", + "readOnly": true + } + } + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ElasticPoolOperation": { + "description": "A elastic pool operation.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ElasticPoolOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "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" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CancelDatabaseOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CancelDatabaseOperation.json new file mode 100644 index 000000000000..884b2b396790 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CancelDatabaseOperation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "databaseName": "testdb", + "operationId": "f779414b-e748-4925-8cfe-c8598f7660ae", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CancelElasticPoolOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CancelElasticPoolOperation.json new file mode 100644 index 000000000000..10ca9fd4c0dd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CancelElasticPoolOperation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "elasticPoolName": "testpool", + "operationId": "f779414b-e748-4925-8cfe-c8598f7660ae", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListDatabaseOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListDatabaseOperations.json new file mode 100644 index 000000000000..aa63a9bef18a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListDatabaseOperations.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "databaseName": "testdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/databases/testdb/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/servers/databases/operations", + "properties": { + "databaseName": "testdb", + "operation": "UpdateLogicalDatabase", + "operationFriendlyName": "ALTER DATABASE", + "percentComplete": 100, + "serverName": "sqlcrudtest-4645", + "startTime": "2017-06-01T09:10:08.10Z", + "state": "Succeeded", + "estimatedCompletionTime": "2017-06-01T13:10:10Z", + "description": "UpdateLogicalDatabase on 'testdb', target ServiceLevelObjective S3", + "isCancellable": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/databases/testdb/operations/55555555-5555-5555-5555-555555555555", + "name": "55555555-5555-5555-5555-555555555555", + "type": "Microsoft.Sql/servers/databases/operations", + "properties": { + "databaseName": "testdb", + "operation": "UpdateLogicalDatabase", + "operationFriendlyName": "ALTER DATABASE", + "percentComplete": 19, + "serverName": "sqlcrudtest-4645", + "startTime": "2017-06-01T10:10:08.10Z", + "state": "InProgress", + "estimatedCompletionTime": "2017-06-01T13:10:10Z", + "description": "UpdateLogicalDatabase on 'testdb', target ServiceLevelObjective S3", + "isCancellable": true + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListElasticPoolOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListElasticPoolOperations.json new file mode 100644 index 000000000000..c4b5ba23fd36 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListElasticPoolOperations.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtestgroup", + "serverName": "sqlcrudtestserver", + "elasticPoolName": "testpool", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtestgroup/providers/Microsoft.Sql/servers/sqlcrudtestserver/elasticPools/testpool/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/servers/elasticPools/operations", + "properties": { + "elasticPoolName": "testpool", + "operation": "UPDATE", + "operationFriendlyName": "UPDATE", + "percentComplete": 100, + "serverName": "sqlcrudtestserver", + "startTime": "2017-10-30T09:10:08.10Z", + "state": "COMPLETED", + "estimatedCompletionTime": "2017-10-30T13:10:10Z", + "description": "UpdateLogicalResourcePool on pool 'testpool', target Edition 'Standard', target pool DTU 300", + "isCancellable": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtestgroup/providers/Microsoft.Sql/servers/sqlcrudtestserver/elasticPools/testpool/operations/55555555-5555-5555-5555-555555555555", + "name": "55555555-5555-5555-5555-555555555555", + "type": "Microsoft.Sql/servers/elasticPools/operations", + "properties": { + "elasticPoolName": "testpool", + "operation": "UPDATE", + "operationFriendlyName": "UPDATE", + "percentComplete": 0, + "serverName": "sqlcrudtestserver", + "startTime": "2017-10-30T10:10:08.10Z", + "state": "IN_PROGRESS", + "estimatedCompletionTime": "2017-10-31T09:10:10Z", + "description": "UpdateLogicalResourcePool on pool 'testpool', target Edition 'Standard', target pool DTU 300", + "isCancellable": true + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index ac212fc3368e..398cc943906d 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -4,10 +4,8 @@ This is the AutoRest configuration file for Sql. - - ---- ## Getting Started + To build the SDK for Sql, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,29 +13,138 @@ To build the SDK for Sql, simply [Install AutoRest](https://aka.ms/autorest/inst To see additional help and options, run: > `autorest --help` ---- ## Configuration - - ### Basic Information + These are the global settings for the Sql API. ``` yaml title: SqlManagementClient description: The Azure SQL Database management API provides a RESTful set of web services that interact with Azure SQL Database services to manage your databases. The API enables you to create, retrieve, update, and delete databases. openapi-type: arm -tag: package-2017-03-preview +tag: package-composite-v2 ``` -## Configuration for generating client SDKs +## Composite packages + +The following packages may be composed from multiple api-versions. + +### Tag: package-composite-v2 + +These settings apply only when `--tag=package-composite-v2` is specified on the command line. + +This section contains the "composite-v2" set of APIs, which is composed from a selection of api-versions that will remain backwards compatible with "v2" clients such as .NET SDK Microsoft.Azure.Management.Sql version 1.13.0-preview. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. + +``` yaml $(tag) == 'package-composite-v2' +input-file: +- Microsoft.Sql/stable/2014-04-01/backups.json +- Microsoft.Sql/stable/2014-04-01/capabilities.json +- Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json +- Microsoft.Sql/stable/2014-04-01/connectionPolicies.json +- Microsoft.Sql/stable/2014-04-01/databases.json +- Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json +- Microsoft.Sql/stable/2014-04-01/dataMasking.json +- Microsoft.Sql/stable/2014-04-01/elasticPools.json +- Microsoft.Sql/stable/2014-04-01/firewallRules.json +- Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json +- Microsoft.Sql/stable/2014-04-01/importExport.json +- Microsoft.Sql/stable/2014-04-01/metrics.json +- Microsoft.Sql/stable/2014-04-01/replicationLinks.json +- Microsoft.Sql/stable/2014-04-01/serverAzureADAdministrators.json +- Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json +- Microsoft.Sql/stable/2014-04-01/serviceObjectives.json +- Microsoft.Sql/stable/2014-04-01/sql.core.json +- Microsoft.Sql/stable/2014-04-01/usages.json +- Microsoft.Sql/preview/2015-05-01-preview/blobAuditingPolicies.json +- Microsoft.Sql/preview/2015-05-01-preview/databaseAutomaticTuning.json +- Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json +- Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json +- Microsoft.Sql/preview/2015-05-01-preview/operations.json +- Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json +- Microsoft.Sql/preview/2015-05-01-preview/servers.json +- Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json +- Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json +- Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json +- Microsoft.Sql/preview/2015-05-01-preview/usages.json +- Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json +- Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json +- Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json +- Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json +- Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json +- Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json +- Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json +- Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient +``` + +### Tag: package-composite-v1 + +These settings apply only when `--tag=package-composite-v1` is specified on the command line. + +This section contains the "composite-v1" set of APIs, which is composed from a selection of api-versions that will remain backwards compatible with "v1" clients such as .NET SDK Microsoft.Azure.Management.Sql version 1.x. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. + +``` yaml $(tag) == 'package-composite-v1' +input-file: +- Microsoft.Sql/stable/2014-04-01/backupLongTermRetentionPolicies.json +- Microsoft.Sql/stable/2014-04-01/backupLongTermRetentionVaults.json +- Microsoft.Sql/stable/2014-04-01/backups.json +- Microsoft.Sql/stable/2014-04-01/capabilities.json +- Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json +- Microsoft.Sql/stable/2014-04-01/connectionPolicies.json +- Microsoft.Sql/stable/2014-04-01/databases.json +- Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json +- Microsoft.Sql/stable/2014-04-01/dataMasking.json +- Microsoft.Sql/stable/2014-04-01/elasticPools.json +- Microsoft.Sql/stable/2014-04-01/firewallRules.json +- Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json +- Microsoft.Sql/stable/2014-04-01/importExport.json +- Microsoft.Sql/stable/2014-04-01/metrics.json +- Microsoft.Sql/stable/2014-04-01/replicationLinks.json +- Microsoft.Sql/stable/2014-04-01/serverAzureADAdministrators.json +- Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json +- Microsoft.Sql/stable/2014-04-01/serviceObjectives.json +- Microsoft.Sql/stable/2014-04-01/sql.core.json +- Microsoft.Sql/stable/2014-04-01/usages.json +- Microsoft.Sql/preview/2015-05-01-preview/blobAuditingPolicies.json +- Microsoft.Sql/preview/2015-05-01-preview/databaseAutomaticTuning.json +- Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json +- Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json +- Microsoft.Sql/preview/2015-05-01-preview/operations.json +- Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json +- Microsoft.Sql/preview/2015-05-01-preview/servers.json +- Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json +- Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json +- Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json +- Microsoft.Sql/preview/2015-05-01-preview/usages.json +- Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json +- Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json +- Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json +- Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json +- Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json +- Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json +- Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient +``` ### Tag: package-2017-03-preview These settings apply only when `--tag=package-2017-03-preview` is specified on the command line. -This section contains the input swagger files that are used when generating client SDKs up to and including api-version 2017-03-01-preview. APIs should only be added to this section when the API is ready for production and the generated client code has been tested end-to-end. +This section contains the input swagger files that are used when generating client SDKs up to and including api-version 2017-03-01-preview, except databases.json which remains at api-version 2014-04-01 in order to maintain compatibility with clients that have been previously released with this package. To prevent similar confusion moving forward, sections named like `package-20xx-xx(-preview)` will not be used after package-2017-03-preview. Instead, sections named like `package-composite-vx` will be used to compose across api-versions and `package-pure-20xx-xx(-preview)` will be used for single api-versions. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. ``` yaml $(tag) == 'package-2017-03-preview' input-file: @@ -74,6 +181,7 @@ input-file: - Microsoft.Sql/preview/2015-05-01-preview/usages.json - Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json - Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json +- Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json - Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json @@ -88,7 +196,9 @@ override-info: These settings apply only when `--tag=package-2015-05-preview` is specified on the command line. -This section contains the input swagger files that are used when generating client SDKs up to and including api-version 2015-05-01-preview. APIs should only be added to this section when the API is ready for production and the generated client code has been tested end-to-end. +This section contains the input swagger files that are used when generating client SDKs up to and including api-version 2015-05-01-preview. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. ``` yaml $(tag) == 'package-2015-05-preview' input-file: @@ -134,6 +244,8 @@ override-info: These settings apply only when `--tag=package-2014-04` is specified on the command line. +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. + ``` yaml $(tag) == 'package-2014-04' input-file: - Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json @@ -150,19 +262,44 @@ override-info: title: SqlManagementClient ``` -## Configuration for generating resource manager schemas +## Pure package versions + +The following packages are each composed of all apis from only one api-version. + +### Tag: package-pure-2017-10-preview + +These settings apply only when `--tag=package-pure-2017-10-preview` is specified on the command line. + +This section contains all input swagger files for version 2017-10-01-preview. All APIs of that version must be added this section when the API is ready for production. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. + +These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\2017-03-01-preview\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` + +``` yaml $(tag) == 'package-pure-2017-10-preview' +input-file: + - ./Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json + - ./Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient +``` + +### Tag: package-pure-2017-03-preview -### Tag: schema-2017-03-preview +These settings apply only when `--tag=package-pure-2017-03-preview` is specified on the command line. -These settings apply only when `--tag=schema-2017-03-preview` is specified on the command line. +This section contains all input swagger files for version 2017-03-01-preview. All APIs of that version must be added this section when the API is ready for production. -This section contains the input swagger files that are used when generating resource manager schemas for version 2017-03-01-preview. All APIs of that version must be added this section when the API is ready for production. +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\2017-03-01-preview\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` -``` yaml $(tag) == 'schema-2017-03-preview' +``` yaml $(tag) == 'package-pure-2017-03-preview' input-file: - ./Microsoft.Sql/preview/2017-03-01-preview/databases.json + - ./Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - ./Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - ./Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json - ./Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json @@ -172,15 +309,17 @@ override-info: title: SqlManagementClient ``` -### Tag: schema-2015-05-preview +### Tag: package-pure-2015-05-preview + +These settings apply only when `--tag=package-pure-2015-05-preview` is specified on the command line. -These settings apply only when `--tag=schema-2015-05-preview` is specified on the command line. +This section contains all input swagger files for version 2015-05-01-preview. All APIs of that version must be added this section when the API is ready for production. -This section contains the input swagger files that are used when generating resource manager schemas for version 2015-05-01-preview. All APIs of that version must be added this section when the API is ready for production. +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\2015-05-01-preview\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` -``` yaml $(tag) == 'schema-2015-05-preview' +``` yaml $(tag) == 'package-pure-2015-05-preview' input-file: - ./Microsoft.Sql/preview/2015-05-01-preview/advisors.json - ./Microsoft.Sql/preview/2015-05-01-preview/blobAuditingPolicies.json @@ -200,15 +339,17 @@ override-info: title: SqlManagementClient ``` -### Tag: schema-2014-04 +### Tag: package-pure-2014-04 + +These settings apply only when `--tag=package-pure-2014-04` is specified on the command line. -These settings apply only when `--tag=schema-2014-04` is specified on the command line. +This section contains all input swagger files for version 2014-04-01-preview. All APIs of that version must be added this section when the API is ready for production. -This section contains the input swagger files that are used when generating resource manager schemas for version 2014-04-01-preview. All APIs of that version must be added this section when the API is ready for production. +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\2014-04-01\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` -``` yaml $(tag) == 'schema-2014-04' +``` yaml $(tag) == 'package-pure-2014-04' input-file: - ./Microsoft.Sql/stable/2014-04-01/advisors.json - ./Microsoft.Sql/stable/2014-04-01/backupLongTermRetentionPolicies.json @@ -245,10 +386,9 @@ override-info: ``` --- -# Code Generation +## Code Generation - -## Swagger to SDK +### Swagger to SDK This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. @@ -260,8 +400,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go ``` - -## C# +### C# These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. @@ -275,7 +414,7 @@ csharp: clear-output-folder: true ``` -## Python +### Python These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. @@ -292,20 +431,20 @@ python: package-version: 0.9.0 clear-output-folder: true ``` + ``` yaml $(python) && $(python-mode) == 'update' python: no-namespace-folders: true output-folder: $(python-sdks-folder)/azure-mgmt-sql/azure/mgmt/sql ``` + ``` yaml $(python) && $(python-mode) == 'create' python: basic-setup-py: true output-folder: $(python-sdks-folder)/azure-mgmt-sql ``` - - -## Go +### Go These settings apply only when `--go` is specified on the command line. @@ -316,16 +455,28 @@ go: clear-output-folder: true ``` -### Go multi-api +#### Go multi-api + +From api-version 2017-10 and onwards, only pure package versions should be used. Composite package versions are used for earlier api-versions (2017-03 and earlier) in order to ensure backwards compatibility with previously released versions of Go SDK, ``` yaml $(go) && $(multiapi) batch: + - tag: package-pure-2017-10-preview - tag: package-2017-03-preview - tag: package-2015-05-preview - tag: package-2014-04 ``` -### Tag: package-2017-03-preview and go +#### Tag: package-pure-2017-10-preview and go + +These settings apply only when `--tag=package-2017-10-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-pure-2017-10-preview' && $(go) +output-folder: $(go-sdk-folder)/services/sql/mgmt/2017-10-01-preview/sql +``` + +#### Tag: package-2017-03-preview and go These settings apply only when `--tag=package-2017-03-preview --go` is specified on the command line. Please also specify `--go-sdk-folder=`. @@ -334,7 +485,7 @@ Please also specify `--go-sdk-folder=`. @@ -343,7 +494,7 @@ Please also specify `--go-sdk-folder=`. @@ -352,22 +503,7 @@ Please also specify `--go-sdk-folder=`. @@ -382,7 +518,7 @@ java: output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-sql ``` -# Validation +## Validation ``` yaml directive: diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json index bce245786000..b0b69d26cb01 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json @@ -1126,7 +1126,8 @@ "in": "header", "description": "Specifies the preferred language for the response.", "required": false, - "type": "string" + "type": "string", + "x-ms-parameter-location": "client" }, "x-ms-client-tenant-id":{ "name": "x-ms-client-tenant-id", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/CommonDefinitions.json index eda20e904adb..b5fad40b666f 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/CommonDefinitions.json @@ -1040,6 +1040,7 @@ "enum": [ "SystemAssigned" ], + "type": "string", "x-ms-enum": { "name": "ManagedServiceIdentityType", "modelAsString": true diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/Recommendations.json b/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/Recommendations.json index feb0fc3e1323..589495fd27ad 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/Recommendations.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/Recommendations.json @@ -48,12 +48,12 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/Recommendation" - } + "$ref": "#/definitions/RecommendationCollection" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -80,6 +80,36 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations/{name}/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disables the specified rule so it will not apply to a subscription in the future.", + "description": "Disables the specified rule so it will not apply to a subscription in the future.", + "operationId": "Recommendations_DisableRecommendationForSubscription", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Rule name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled recommendations." + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendationHistory": { "get": { "tags": [ @@ -117,12 +147,12 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/Recommendation" - } + "$ref": "#/definitions/RecommendationCollection" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -169,12 +199,12 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/Recommendation" - } + "$ref": "#/definitions/RecommendationCollection" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -276,6 +306,12 @@ "description": "Specify true to update the last-seen timestamp of the recommendation object.", "type": "boolean" }, + { + "name": "recommendationId", + "in": "query", + "description": "The GUID of the recommedation object if you query an expired one. You don't need to specify it to query an active entry.", + "type": "string" + }, { "$ref": "#/parameters/subscriptionIdParameter" }, @@ -292,222 +328,305 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/{name}/disable": { + "post": { + "tags": [ + "Recommendations" + ], + "summary": "Disables the specific rule for a web site permanently.", + "description": "Disables the specific rule for a web site permanently.", + "operationId": "Recommendations_DisableRecommendationForSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Rule name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled recommendations." + } + } + } } }, "definitions": { "Recommendation": { "description": "Represents a recommendation result generated by the recommendation engine.", "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], "properties": { - "creationTime": { - "format": "date-time", - "description": "Timestamp when this instance was created.", - "type": "string" - }, - "recommendationId": { - "format": "uuid", - "description": "A GUID value that each recommendation object is associated with.", - "type": "string", - "example": "00000000-0000-0000-0000-000000000000" - }, - "resourceId": { - "description": "Full ARM resource ID string that this recommendation object is associated with.", - "type": "string" - }, - "resourceScope": { - "description": "Name of a resource type this recommendation applies, e.g. Subscription, ServerFarm, Site.", - "enum": [ - "ServerFarm", - "Subscription", - "WebSite" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceScopeType", - "modelAsString": true - } - }, - "ruleName": { - "description": "Unique name of the rule.", - "type": "string" - }, - "displayName": { - "description": "UI friendly name of the rule (may not be unique).", - "type": "string" - }, - "message": { - "description": "Recommendation text.", - "type": "string" - }, - "level": { - "description": "Level indicating how critical this recommendation can impact.", - "enum": [ - "Critical", - "Warning", - "Information", - "NonUrgentSuggestion" - ], - "type": "string", - "x-ms-enum": { - "name": "NotificationLevel", - "modelAsString": false - } - }, - "channels": { - "description": "List of channels that this recommendation can apply.", - "enum": [ - "Notification", - "Api", - "Email", - "Webhook", - "All" - ], - "type": "string", - "x-ms-enum": { - "name": "Channels", - "modelAsString": false - } - }, - "tags": { - "description": "The list of category tags that this recommendation belongs to.", + "properties": { + "description": "Recommendation resource specific properties", + "properties": { + "creationTime": { + "format": "date-time", + "description": "Timestamp when this instance was created.", + "type": "string" + }, + "recommendationId": { + "format": "uuid", + "description": "A GUID value that each recommendation object is associated with.", + "type": "string", + "example": "00000000-0000-0000-0000-000000000000" + }, + "resourceId": { + "description": "Full ARM resource ID string that this recommendation object is associated with.", + "type": "string" + }, + "resourceScope": { + "description": "Name of a resource type this recommendation applies, e.g. Subscription, ServerFarm, Site.", + "enum": [ + "ServerFarm", + "Subscription", + "WebSite" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceScopeType", + "modelAsString": true + } + }, + "ruleName": { + "description": "Unique name of the rule.", + "type": "string" + }, + "displayName": { + "description": "UI friendly name of the rule (may not be unique).", + "type": "string" + }, + "message": { + "description": "Recommendation text.", + "type": "string" + }, + "level": { + "description": "Level indicating how critical this recommendation can impact.", + "enum": [ + "Critical", + "Warning", + "Information", + "NonUrgentSuggestion" + ], + "type": "string", + "x-ms-enum": { + "name": "NotificationLevel", + "modelAsString": false + } + }, + "channels": { + "description": "List of channels that this recommendation can apply.", + "enum": [ + "Notification", + "Api", + "Email", + "Webhook", + "All" + ], + "type": "string", + "x-ms-enum": { + "name": "Channels", + "modelAsString": false + } + }, + "tags": { + "description": "The list of category tags that this recommendation belongs to.", + "type": "array", + "items": { + "type": "string" + } + }, + "actionName": { + "description": "Name of action recommended by this object.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The beginning time in UTC of a range that the recommendation refers to.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time in UTC of a range that the recommendation refers to.", + "type": "string" + }, + "nextNotificationTime": { + "format": "date-time", + "description": "When to notify this recommendation next in UTC. Null means that this will never be notified anymore.", + "type": "string" + }, + "notificationExpirationTime": { + "format": "date-time", + "description": "Date and time in UTC when this notification expires.", + "type": "string" + }, + "notifiedTime": { + "format": "date-time", + "description": "Last timestamp in UTC this instance was actually notified. Null means that this recommendation hasn't been notified yet.", + "type": "string" + }, + "score": { + "format": "double", + "description": "A metric value measured by the rule.", + "type": "number" + }, + "isDynamic": { + "description": "True if this is associated with a dynamically added rule", + "type": "boolean" + }, + "extensionName": { + "description": "Extension name of the portal if exists.", + "type": "string" + }, + "bladeName": { + "description": "Deep link to a blade on the portal.", + "type": "string" + }, + "forwardLink": { + "description": "Forward link to an external document associated with the rule.", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "RecommendationCollection": { + "description": "Collection of recommendations.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/Recommendation" } }, - "actionName": { - "description": "Name of action recommended by this object.", - "type": "string" - }, - "startTime": { - "format": "date-time", - "description": "The beginning time in UTC of a range that the recommendation refers to.", - "type": "string" - }, - "endTime": { - "format": "date-time", - "description": "The end time in UTC of a range that the recommendation refers to.", - "type": "string" - }, - "nextNotificationTime": { - "format": "date-time", - "description": "When to notify this recommendation next in UTC. Null means that this will never be notified anymore.", - "type": "string" - }, - "notificationExpirationTime": { - "format": "date-time", - "description": "Date and time in UTC when this notification expires.", - "type": "string" - }, - "notifiedTime": { - "format": "date-time", - "description": "Last timestamp in UTC this instance was actually notified. Null means that this recommendation hasn't been notified yet.", - "type": "string" - }, - "score": { - "format": "double", - "description": "A metric value measured by the rule.", - "type": "number" - }, - "isDynamic": { - "description": "True if this is associated with a dynamically added rule", - "type": "boolean" - }, - "extensionName": { - "description": "Extension name of the portal if exists.", - "type": "string" - }, - "bladeName": { - "description": "Deep link to a blade on the portal.", - "type": "string" - }, - "forwardLink": { - "description": "Forward link to an external document associated with the rule.", - "type": "string" + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true } } }, "RecommendationRule": { "description": "Represents a recommendation rule that the recommendation engine can perform.", "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], "properties": { - "name": { - "description": "Unique name of the rule.", - "type": "string" - }, - "displayName": { - "description": "UI friendly name of the rule.", - "type": "string" - }, - "message": { - "description": "Localized name of the rule (Good for UI).", - "type": "string" - }, - "recommendationId": { - "format": "uuid", - "description": "Recommendation ID of an associated recommendation object tied to the rule, if exists.\nIf such an object doesn't exist, it is set to null.", - "type": "string", - "example": "00000000-0000-0000-0000-000000000000" - }, - "description": { - "description": "Localized detailed description of the rule.", - "type": "string" - }, - "actionName": { - "description": "Name of action that is recommended by this rule in string.", - "type": "string" - }, - "level": { - "description": "Level of impact indicating how critical this rule is.", - "enum": [ - "Critical", - "Warning", - "Information", - "NonUrgentSuggestion" - ], - "type": "string", - "x-ms-enum": { - "name": "NotificationLevel", - "modelAsString": false - } - }, - "channels": { - "description": "List of available channels that this rule applies.", - "enum": [ - "Notification", - "Api", - "Email", - "Webhook", - "All" - ], - "type": "string", - "x-ms-enum": { - "name": "Channels", - "modelAsString": false - } - }, - "tags": { - "description": "An array of category tags that the rule contains.", - "type": "array", - "items": { - "type": "string" - } - }, - "isDynamic": { - "description": "True if this is associated with a dynamically added rule", - "type": "boolean" - }, - "extensionName": { - "description": "Extension name of the portal if exists. Applicable to dynamic rule only.", - "type": "string" - }, - "bladeName": { - "description": "Deep link to a blade on the portal. Applicable to dynamic rule only.", - "type": "string" - }, - "forwardLink": { - "description": "Forward link to an external document associated with the rule. Applicable to dynamic rule only.", - "type": "string" + "properties": { + "description": "RecommendationRule resource specific properties", + "properties": { + "name": { + "description": "Unique name of the rule.", + "type": "string" + }, + "displayName": { + "description": "UI friendly name of the rule.", + "type": "string" + }, + "message": { + "description": "Localized name of the rule (Good for UI).", + "type": "string" + }, + "recommendationId": { + "format": "uuid", + "description": "Recommendation ID of an associated recommendation object tied to the rule, if exists.\nIf such an object doesn't exist, it is set to null.", + "type": "string", + "example": "00000000-0000-0000-0000-000000000000" + }, + "description": { + "description": "Localized detailed description of the rule.", + "type": "string" + }, + "actionName": { + "description": "Name of action that is recommended by this rule in string.", + "type": "string" + }, + "level": { + "description": "Level of impact indicating how critical this rule is.", + "enum": [ + "Critical", + "Warning", + "Information", + "NonUrgentSuggestion" + ], + "type": "string", + "x-ms-enum": { + "name": "NotificationLevel", + "modelAsString": false + } + }, + "channels": { + "description": "List of available channels that this rule applies.", + "enum": [ + "Notification", + "Api", + "Email", + "Webhook", + "All" + ], + "type": "string", + "x-ms-enum": { + "name": "Channels", + "modelAsString": false + } + }, + "tags": { + "description": "An array of category tags that the rule contains.", + "type": "array", + "items": { + "type": "string" + } + }, + "isDynamic": { + "description": "True if this is associated with a dynamically added rule", + "type": "boolean" + }, + "extensionName": { + "description": "Extension name of the portal if exists. Applicable to dynamic rule only.", + "type": "string" + }, + "bladeName": { + "description": "Deep link to a blade on the portal. Applicable to dynamic rule only.", + "type": "string" + }, + "forwardLink": { + "description": "Forward link to an external document associated with the rule. Applicable to dynamic rule only.", + "type": "string" + } + }, + "x-ms-client-flatten": true } } } diff --git a/specification/web/resource-manager/readme.md b/specification/web/resource-manager/readme.md index d9f5a48f7543..7cab285a6a90 100644 --- a/specification/web/resource-manager/readme.md +++ b/specification/web/resource-manager/readme.md @@ -228,6 +228,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.web package-name: azure-mgmt-web + package-version: 0.36.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' diff --git a/test/syntax.js b/test/syntax.js index 86b7379fef71..fec45a99754c 100644 --- a/test/syntax.js +++ b/test/syntax.js @@ -23,33 +23,40 @@ var context; describe('Azure swagger schema validation:', function () { - before(async function () { - const result = await utils.initializeValidator(); - context = result; + before(function (done) { + utils.initializeValidator().then((result) => { + context = result; + done(); + }); + }); for (const swagger of utils.swaggers) { - it(swagger + ' should be a valid Swagger document.', async function () { - const parsedData = await utils.parseJsonFromFile(swagger); - var valid = context.validator.validate(parsedData, context.extensionSwaggerSchema); + it(swagger + ' should be a valid Swagger document.', function (done) { + utils.parseJsonFromFile(swagger).then((parsedData)=> { + var valid = context.validator.validate(parsedData, context.extensionSwaggerSchema); if (!valid) { var error = context.validator.getLastErrors(); throw new Error("Schema validation failed: " + util.inspect(error, { depth: null })); } assert(valid === true); + done(); + }); }); } describe('Azure x-ms-example schema validation:', function () { for (const example of utils.examples) { - it('x-ms-examples: ' + example + ' should be a valid x-ms-example.', async function () { - const parsedData = await utils.parseJsonFromFile(example); - var valid = context.validator.validate(parsedData, context.exampleSchema); + it('x-ms-examples: ' + example + ' should be a valid x-ms-example.', function (done) { + utils.parseJsonFromFile(example).then((parsedData) => { + var valid = context.validator.validate(parsedData, context.exampleSchema); if (!valid) { var error = context.validator.getLastErrors(); throw new Error("Schema validation failed: " + util.inspect(error, { depth: null })); } assert(valid === true); + done(); + }); }); } }); @@ -57,13 +64,14 @@ describe('Azure swagger schema validation:', function () { describe('External file or url references ("$ref") in a swagger spec:', function () { for (const swagger of utils.swaggers) { - it(swagger + ' should be completely resolvable.', async function () { + it(swagger + ' should be completely resolvable.', function (done) { RefParser.bundle(swagger, function (bundleErr, bundleResult) { if (bundleErr) { var msg = swagger + ' has references that cannot be resolved. They are as follows: \n' + util.inspect(bundleErr.message, { depth: null }); console.log(msg); throw new Error(msg); } + done(); }); }); }